使用JavaFXWebView创建PDF
有可能在PDF库的帮助下,从JavaFXWebView创建PDF吗使用JavaFXWebView创建PDF,java,pdf,javafx,Java,Pdf,Javafx,有可能在PDF库的帮助下,从JavaFXWebView创建PDF吗 我知道webview支持,但如果主机系统上没有一个典型的pdf打印驱动程序,是否可以打印成pdf。我无法找到解决此问题的纯java解决方案。我更喜欢用于非Java项目,我认为它也很适合WebView(因为它也是基于WebKit的) 看一看。应该可以从文档(webView.getEngine().getDocument())中提取HTML并将其传递给iText以转换为PDF。@这将使用iTexts HTML呈现引擎而不是webki
我知道webview支持,但如果主机系统上没有一个典型的pdf打印驱动程序,是否可以打印成pdf。我无法找到解决此问题的纯java解决方案。我更喜欢用于非Java项目,我认为它也很适合WebView(因为它也是基于WebKit的) 看一看。应该可以从文档(
webView.getEngine().getDocument()
)中提取HTML并将其传递给iText以转换为PDF。@这将使用iTexts HTML呈现引擎而不是webkit。结果可能与用户看到的和得到的有所不同。是的,没错:但通常我认为用户会期望网页的打印外观与屏幕外观有很大的不同。但我知道这可能不是你想要的。因此,另一种方法可能是在web视图上调用snapshot
,将生成的JavaFX图像转换为iText图像(通过AWT图像),然后将其添加到iText PdfDocument。您需要采取一些步骤来确保快照整个页面(而不仅仅是屏幕可见部分),并可能进行一些分页。同意用户期望打印输出不同,但如果您尝试使用iText打印html5+JS+Bootstap页面,结果可能与用户期望和接受的结果相差甚远。制作一个快照
不是什么PDF格式,只是一张经过PDFized处理的图像,但它是一个解决方案:)