Лучшая библиотека Java для программного преобразования HTML-страницы в изображение /PDF
Я ищу лучшую Java-библиотеку, которую я могу передать в URL-адресе, и сделать так, чтобы веб-страница выглядела так, как в браузере. Я попробовал flyingsaucer, но кажется, что почти каждая веб-страница ломает его - он даже не отображает www.google.com или yahoo.com - единственный сайт, на котором я могу его отобразить, это www.w3c.org!
Мысли о лучшем инструменте, чтобы использовать, или возможно позволить летающей тарелке быть более слабой в xhtml, принимает?
3 ответа
Летающая тарелка дает сбой на многих страницах, поскольку она допускает только xhtml (см. Руководство).
Но вы можете использовать некоторые HTML-библиотеки, чтобы "очистить" ваш ввод и затем использовать FS.
Сайт -> "Очиститель" -> Летающая тарелка
Некоторые хорошие и бесплатные библиотеки:
- JSoup (личная рекомендация)
- HtmlCleaner
- JTidy (иногда более строгий, чем нужно)
- Иерихон HTML
Может быть, вы можете попробовать itext.jar
загрузите его с http://itextpdf.com/download.php
О сканировании html:
использовать URL из библиотеки Java. Есть множество примеров по этому поводу.
о преобразовании PDF:
Если вы используете Spring Framework, вы можете использовать класс AbstractPdfView через iText API. это мой любимый пример. Я думаю, что вы можете легко использовать это.
о преобразовании изображения:
Я рекомендую этот: http://code.google.com/p/java-html2image/
Всего:
читать html по URL → конвертировать его через iText или java-html2image. Я настоятельно рекомендую вам сделать это самостоятельно, а не оставлять это определенной библиотеке.