Рендеринг изображений Python docx с использованием библиотеки шаблонов docx - PullRequest
2 голосов
/ 13 мая 2019

Я пытаюсь отобразить изображение в шаблон docx, в котором есть хук jinja.

Я использую метод inlineImage из шаблона docx, используя это. Я смог отобразить изображение, которое он открывает в libreoffice Writer.но не в msword, где оно должно быть реально использовано.

В msword изображение отображается, но не отображается, отображается только пустая область.

Я даже пытался использовать метод subdoc, это такжевыдаю мне те же результаты.

Пожалуйста, помогите мне понять, что я делаю неправильно.

Я использую библиотеку python-docx 0.8.7 и библиотеку docxtemplate 0.5.17 для достижения результата

Я обязан использовать эти версии, поскольку docxtemplate принудительно использует эту версию python-docx

1 Ответ

1 голос
/ 14 мая 2019

Я публикую это как ответ, чтобы он мог помочь другим, пытающимся достичь того же.

В моем коде я использовал NamedTemporaryFile(delete=None) для создания изображения, прежде чем передать значение inlineimage как InlineImage(template, tmpfile.name) Что и стало причиной проблемы, я перемоделировал свою логику для непосредственного добавления изображения после некоторого изменения размера в зависимости от аспекта изображения Соотношение и отправить путь изображения вместо имени файла в метод InlineImage, и это сработало как шарм.

...