将html文件转换为pdf文件,代码如下:
OutputStream os = null;
try {
File f = new File("F:/Test");
if (!f.exists()) {
f.mkdir();
}
os = new FileOutputStream("F:/Test/file.pdf");
ITextRenderer renderer = new ITextRenderer();
ITextFontResolver fontResolver = renderer.getFontResolver();
fontResolver.addFont("C:/Windows/fonts/simsun.ttc",
BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
StringBuffer html = new StringBuffer(); html.append("/p>
html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\"
\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">");
html.append("");
html.append("
"); html.append("http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"
/>"); html.append("
{font-family:SimSun;}"); html.append("");
html.append("
"); html.append("html.append(""); html.append("");
renderer.setDocumentFromString(html.toString());
renderer.layout();
renderer.createPDF(os);
System.out.println("转换成功=======");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (DocumentException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
必须注意的是一定要加上
否则可能会输出中文乱码,或者不能输出中文。
需要下载的core-renderer.jar、iText-2.0.8.jar这两个包。