将html文件转换为pdf格式的文件

将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("<!DOCTYPE
			 html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\"
			 \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">");
			 html.append("<html xmlns=\"http://www.w3.org/1999/xhtml\">");
			 html.append("<head>"); html.append("<meta
			 http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\"
			 />"); html.append("<style type=\"text/css\">body
			 {font-family:SimSun;}</style>"); html.append("</head>");
			 html.append("<body>"); html.append("<div>支持中文</div>");
			 html.append("</body>"); html.append("</html>");
			
			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();
		}

必须注意的是一定要加上<style type=\"text/css\">body {font-family:SimSun;}</style>

否则可能会输出中文乱码,或者不能输出中文。


需要下载的core-renderer.jar、iText-2.0.8.jar这两个包。




   

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值