需要的jar包: core-renderer.jar 和 iText-2.0.8.jar
Html代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
">
<html xmlns="http://www.w3.org/1999/xhtml
">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>test</title>
<style type="text/css">
body {
font-family: SimSun;
font-size:22px;
font-style:italic;
font-weight:bold;
color:#00F;
}
</style></head>
<body>
显示中文dsklahsdal;das哈哈哈哈<br />
上多哈考虑的哈
</body>
</html>
Java代码
package com.test;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
import org.xhtmlrenderer.pdf.ITextFontResolver;
import org.xhtmlrenderer.pdf.ITextRenderer;
import com.lowagie.text.pdf.BaseFont;
/**
* TODO class description *
*
* @author pcwang
*
* @version 1.0, 上午11:03:26 create $Id$
*/
public class ITextRendererTest {
public static void main(String[] args) throws Exception {
String inputFile = "WebRoot/a.html";
String url = new File(inputFile).toURI().toURL().toString();
String outputFile = "WebRoot/a.pdf";
System.out.println(url);
OutputStream os = new FileOutputStream(outputFile);
ITextRenderer renderer = new ITextRenderer();
renderer.setDocument(url);
// 解决中文支持问题
ITextFontResolver fontResolver = renderer.getFontResolver();
fontResolver.addFont("C:/Windows/Fonts/SIMSUN.TTC", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
// 解决图片的相对路径问题
// renderer.getSharedContext().setBaseURL("file:/D:/z/temp/");
renderer.layout();
renderer.createPDF(os);
os.close();
}
}
注意事项:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
">
<html xmlns="http://www.w3.org/1999/xhtml
">
(1)头文件必须这个,否则会报以下错误:
错误:“The declaration for the entity "HTML.Version" must end with '>'.”
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
(2)charset 必须是UTF-8,否则会报以下错误:
错误:“Invalid byte 1 of 1-byte UTF-8 sequence.”
(3)需要定一个样式:body {font-family: SimSun};
(4)html页面必须严格遵循, 该打引号就要打引号
错误:cellpadding=0 ,border=1"
(5)不要引用无效的链接
<link rel="stylesheet" type="text/css" href="XX/ll.css"/
>
<link rel="stylesheet" type="text/css" href="XX/main.css"/
>
分享到:
相关推荐
1.用户导入word生成pdf -首先导入word的时候读取word里面的全部内容。调用(ReadAndWriteDoc)然后将内容 传送到createPdf里面生成pdf。导入的时候读取采用poi /生成的时候采用的是...4.将html转换成pdf(itext)
itext7 html转换为pdf;iText7页码、页眉、页脚,itext 的复杂表格实现;完整springboot项目代码
java实现html转pdf,包含后端代码,html测试页面,pom依赖,jar包,如页面过于复杂需调整页面,有些样式itextpdf不支持,请寻找其它样式替换。
使用itext7将html转换为pdf,支持中文,可以生产页眉,页脚,这个是windows系统的,里面还需要自己在pom.xml中导入相关的包,不会的可以找我
iText7 用于html转换pdf核心包-html2pdf-1.0.1.jar。。。。
1、itext将静态html转pdf中文显示及换行问题 2、itext将静态html转pdf 字体问题 3、html转pdf 参考我的另外一篇博文https://blog.csdn.net/qq_38616723/article/details/125188407?spm=1001.2014.3001.5502
不用改变源码,就可以实现换行
使用iText-2.0.8将Html转换为pdf,带图片功能
该项目实现了使用IText将html文件转为pdf文件功能。 步骤: (1):将字体文件按代码中写的路径放到磁盘对应位置。 (2):将template.html文件按代码中路径放到磁盘对应位置。 (3):直接运行HtmlToPdfUtilForCss...
将word转换成pdf确实有很多种方案!最近正好需要做一个这样的功能,需求是将word模板进行签名后转换为pdf。为此,我花了一点时间去网上找方案。这里记录一下最终的方案:利用poi+itextpdf进行word转pdf。此资源按...
System.out.println("======转换成功!"); os.close(); os.flush(); } public static void main(String[] args) { ItextUtil itextUtil = new ItextUtil(); String html = ""; html += "<table>"; html...
利用itext将html转为pdf,支持中文,和图片,代码地址在https://www.cnblogs.com/bert227/p/9724254.html
经过大牛修改后的core-renderer.jar,当把HTML转化成PDF时支持table的td中的中文、英文和数字自动换行,table必须添加样式table-layout:fixed;word-break:break-strict;
iText是著名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库。通过iText不仅可以生成PDF或rtf的文档,而且可以将XML、Html文件转化为PDF文件。
itext用于进行转化pdf操作的组件,压缩包为java操作的一些所需jar包
iText是著名的开放项目,是用于生成PDF文档的一个java类库。通过iText不仅可以生成PDF或rtf的文档,而且可以将XML、Html文件转化为PDF文件。
创建XML文档,将HTML,Web表单,CSS或数据库中的文档转换为PDF,并使其符合全球标准。
iText是著名的开放项目,是用于生成PDF文档的一个java类库。通过iText不仅可以生成PDF或rtf的文档,而且可以将XML、Html文件转化为PDF文件。
itext+flaying saucer,html转化成pdf所用到的所有jar包,并且已经修改了core-renderer.jar,使其能够支持中文换行,中文显示。
iText是著名的开放源码的站点sourceforge的一个项目,它是一个...如果PDF是标记的且包含一个结构树,就可以借助于iText将PDF文档转换成XML文档(这往往取决于PDF文档是如何创建的)。另外还可以从页面中提取纯文本。