Apache POI docx: HTML как altChunk с фото

avatar
marcoF76IT
9 августа 2021 в 06:50
83
0
0

Доброе утро
Мне нужно добавить текст HTML в мой файл DOCX с помощью Apache POI.
Этот HTML содержит фотографию. Ссылка на фото указывает на ресурс, который виден только во внутреннем лане. Поэтому, когда создается .docx, когда я открываю документ вне локальной сети, я не вижу изображение.
Можно ли сохранить образ в папке "media" .docx и создать ссылку на него в папке "_rels"?
Если да, где я могу найти документацию, описывающую, как это сделать с помощью Apache Poi?
Спасибо
С уважением

Источник
Axel Richter
9 августа 2021 в 07:27
1

Почему altChunk? Почему бы не использовать собственные методы XWPF (XWPFRun.addPicture)? Это управляет встраиванием изображения в файл *.docx.

marcoF76IT
9 августа 2021 в 10:05
0

Привет. В моем приложении мне нужно создать .docx из двух наборов данных: обычный текст и текст HTML. Текст HTML предоставляется из редактора форматированного текста javascript. В этом богатом текстовом редакторе есть несколько фотографий. Фотографии сохраняются в виде html-тега "<img>" и ссылки на фото во внутренней сети. Поэтому я не могу использовать методы (XWPFRun.addPicture).

Axel Richter
9 августа 2021 в 10:49
0

Тогда это невозможно, поскольку altChunk не может ссылаться на media внутри файловой системы *.docx ZIP. HTML в altChunk может содержать <img src="data:image/...;base64 .../>, но для создания base64 образа вам понадобятся двоичные файлы изображения. И тогда вы также можете использовать XWPFRun.addPicture.

marcoF76IT
9 августа 2021 в 12:20
0

Я попытался вставить base64 изображения внутри тега <img>. Документ создан, но когда я его открываю, изображение отсутствует. Спасибо за вашу поддержку.

xmedeko
24 ноября 2021 в 17:30
0

См. html-docx-js, как создать MHTML с изображениями для MS Word. Обратите внимание, что он не работает на Mac.

marcoF76IT
26 ноября 2021 в 07:12
0

Спасибо за ваш ответ, но мне нужно сделать это с библиотекой Apache POI.

Ответы (0)