我想转换超文本标记语言(包含JavaScript )到一个PDF。我该怎么做呢?
我只想展示网页中显示的内容。我正在显示一个由JavaScript库生成的甘特图。
现在我想把HTML网页另存为PDF,该怎么做呢?
发布于 2009-11-09 22:39:01
我们也在寻找一些方法来转换html文件与复杂的javascript到pdf。我们文件中的javasript包含document.write和DOM操作。
我们已经尝试使用HtmlUnit和Flying Saucer的组合来解析文件和呈现为pdf,但结果不够令人满意。它可以工作,但在我们的例子中,pdf不够接近用户想要的。
如果你想尝试一下,这里有一个将本地html文件转换为pdf的代码片段。
URL url = new File("test.html").toURI().toURL();
WebClient webClient = new WebClient();
HtmlPage page = webClient.getPage(url);
OutputStream os = null;
try{
os = new FileOutputStream("test.pdf");
ITextRenderer renderer = new ITextRenderer();
renderer.setDocument(page,url.toString());
renderer.layout();
renderer.createPDF(os);
} finally{
if(os != null) os.close();
}发布于 2018-06-05 22:05:14
我很惊讶没有人提到使用API来完成这项工作的可能性。
当然,如果您想保持安全,使用javascript直接从浏览器中将HTML转换为PDF不是一个好主意。
但这是你可以做的:
当你的用户点击“打印”(例如)按钮时,你:
instance).
从用户的角度来看,他们将通过单击按钮来接收PDF。
有许多可用的API可以完成这项工作,其中一些比其他的更好(这不是我在这里的原因),谷歌搜索会给你很多答案。
根据你的后台写的是什么,你可能会对PDFShift感兴趣(真相:我在那里工作)。
他们提供了适用于PHP、Python和Node.js的现成包。你所要做的就是安装软件包,创建一个帐号,并指出你的API密钥,然后你就都设置好了!
API的优点是它们在所有语言中都能很好地工作。您所要做的就是请求(通常是POST),其中包含您想要转换的数据并获得PDF。根据你的使用情况,它通常是免费的,除非你是一个重度用户。
发布于 2009-11-06 17:07:23
使用浏览器的Print...菜单项,您可以使用PDF Printer驱动程序,如PDFCreator。这样,在呈现页面时,浏览器将处理页面中包含的任何JavaScript。
是一个免费的工具,可以从几乎任何Windows应用程序创建PDF文件。
的程序创建PDF
https://stackoverflow.com/questions/1686280
复制相似问题