iText 7とは違って、HTMLWorker、ParseXHtml、Documentなどの関連するクラスを見つけることができませんでした。 iText 7を使ってHTMLファイルをPDFに変換する方法を教えてもらえますか?iText 7 - HTMLWorkerとParseXHtmlが見つからない
ありがとう、 Sumanasa
iText 7とは違って、HTMLWorker、ParseXHtml、Documentなどの関連するクラスを見つけることができませんでした。 iText 7を使ってHTMLファイルをPDFに変換する方法を教えてもらえますか?iText 7 - HTMLWorkerとParseXHtmlが見つからない
ありがとう、 Sumanasa
HTMLWorker
は何年も前に廃止されました。 iText 5では、実際にはXMLWorker
を使用する必要があります。iText pdfHTML
モジュールはXmlWorker
の代わりにリリースされました。 C#のバージョンはNuGet Galleryからダウンロードできます。 JavaのバージョンはArtifactoryからダウンロードできます。
あなたが探している主なクラスはHtmlConverter
です。 html
をレイアウト構造に将来追加する要素のリスト、com.itextpdf.layout.Document
インスタンス、または.pdf
ファイルのいずれかに変換するための多くの静的メソッドオーバーロードがあります。 .pdf
に.html
ファイルを変換する
例:レイアウト要素にHTMLを変換する
HtmlConverter.convertToPdf(new File(htmlFilePath), new File(outPdfFilePath));
例:
String html = "<p>Hello world!</p>";
List<IElement> lst = HtmlConverter.convertToElements(html);
また、pdfHTML
は今@media
ルールをサポートしていますので、あなたは、コンフィギュレーションを提供する場合があります例えば@media print
命令を使用する場合など、CSSを適用するために使用される場合、MediaDeviceDescription
をそれに応じて設定する必要があります:
ConverterProperties properties = new ConverterProperties()
.setMediaDeviceDescription(new MediaDeviceDescription(MediaType.PRINT));
HtmlConverter.convertToPdf(new File(htmlPath), new File(outPdfPath), properties);
HTMLをPDFに変換するときに使用したいフォントのセットを指定するには、あなたもFontProvider
を設定することができます。
FontProvider fontProvider = new FontProvider();
fontProvider.addDirectory(fontsDir)
properties.setFontProvider(fontProvider);