iTextPDF 7 (7.1.5), дополнение pdfHTML. HTML в PDF. Изображения URL не в выводе PDF - PullRequest
1 голос
/ 15 марта 2019

У меня есть HTML-страница с текстом, изображениями, и я конвертирую HTML в PDF.В сгенерированном PDF включенные изображения не отображаются и отображаются только текст и внедренные изображения base64.Изображения URL не.

Если я передаю BaseURI ConverterProperty, например, «D: / HTML / images /», меняю URL-адрес изображений HTML (XSLT), удаляя «http://" из URL, и превращаю de URL Path как папку вде базовая папка URI, процесс работает нормально !!!

Пример кода:

ConverterProperties props = new ConverterProperties();
props.setBaseUri("D:/HTML/images/");
HtmlConverter.convertToPdf(htmlString, dest,props);

Наличие тега html img со значением атрибута src:

http://www.mywebserver.com/gsi/img/logo.jpg

Изменено на:

www.mywebserver.com/gsi/img/logo.jpg

Сохранение изображения в:

D:/HTML/images/www.mywebserver.com/gsi/img/logo.jpg

Работает нормально !!!

Но если я попробую изображения с сервера, например:

http://www.mywebserver.com/gsi/img/Logo.jpg

затем изображение, которого нет в выводе PDF.

ПРИМЕЧАНИЕ. Я использую itextpdf 7.1.5 для создания PDF.

Мой простой код:

HtmlConverter.convertToPdf(htmlString, dest);

Мой журнал сервера:

mar 15, 2019 11:18:27 AM com.itextpdf.styledxmlparser.resolver.resource.ResourceResolver retrieveImageExtended
GRAVE: Unable to retrieve image with given base URI (file:/D:/wlsservermydomain/) and image source path (http://www.mywebserver.com/gsi/img/Logo.jpg)
<15-03-2019 11:18:27 Hora de Chile> <Error> <com.itextpdf.styledxmlparser.resolver.resource.ResourceResolver> <BEA-000000> <Unable to retrieve image with given base URI (file:/D:/wlsservermydomain/) and image source path (http://www.mywebserver.com/gsi/img/Logo.jpg)>
mar 15, 2019 11:18:27 AM com.itextpdf.html2pdf.attach.impl.DefaultHtmlProcessor visit
GRAVE: Worker of type com.itextpdf.html2pdf.attach.impl.tags.TdTagWorker unable to process com.itextpdf.html2pdf.attach.impl.tags.ImgTagWorker
<15-03-2019 11:18:27 Hora de Chile> <Error> <com.itextpdf.html2pdf.attach.impl.DefaultHtmlProcessor> <BEA-000000> <Worker of type com.itextpdf.html2pdf.attach.impl.tags.TdTagWorker unable to process com.itextpdf.html2pdf.attach.impl.tags.ImgTagWorker>

Кажется, что iTextPDF ищет изображения в рабочей папке сервера D: \ wlsservermydomain.

Как мне заставить iText выглядетьза изображения онлайн?

Спасибо!

1 Ответ

0 голосов
/ 27 апреля 2019

Сервер, с которого вы используете изображение, ограничивает загрузку изображения без Browser User-Agent, поэтому в pdf изображение не включено.

Попробуйте использовать другой URL-адрес изображения, где сервер позволяет скачивать без user-agent.также

Например:

https://images.homedepot-static.com/productImages/e0b36c9f-48c2-4fbd-ace8-3fa0e877aacc/svn/york-wallcoverings-wallpaper-at7053-64_1000.jpg

вы получите изображение в своем PDF-файле.

Внутренний итератор с использованием url.openStream()) для получения входного потока из import java.net.URL;

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...