使用的版本是目前最新的5.0.3,可以在http://itextpdf.com/index.php下载,中文语言包下的可能不是最新的,导致调试出了问题,最后用了个笨方法解决的。
//1.建立Document实例
Document document = new Document();
//2.建立一个书写器与Document对象关联,通过书写器将文档写入磁盘
PdfWriter.getInstance(document, new FileOutputStream("f:/test.pdf"));
//3.打开文档
document.open();
//4.向文档中添加内容
//a)添加一个图片
Image img = Image.getInstance("f:/pdf.jpg");
img.setAlignment(Image.LEFT|Image.TEXTWRAP);
img.scalePercent(30f);
//document.add(img);
//b)添加一个段落
document.add(new Paragraph("iText HelloWorld"));
//c)添加一个块
document.add(new Chunk("Text is underline", FontFactory.getFont(FontFactory.HELVETICA_BOLD, 12, Font.UNDERLINE)));
//d)添加中文,需要引入iTextAsian.jar
BaseFont bfChi = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
Font fontChi = new Font(bfChi, 12, Font.NORMAL);
document.add(new Paragraph("中文测试", fontChi));
//e)添加一个表格
//表格内部格式和html中的格式差不多
PdfPTable table = new PdfPTable(4);
table.setWidthPercentage(100);
table.setWidthPercentage(100);
table.addCell (new Paragraph ("学号",fontChi));
PdfPCell cell = new PdfPCell (new Paragraph ("00000001",fontChi));
cell.setColspan (3);
table.addCell (cell);
table.addCell (new Paragraph ("姓名",fontChi));
table.addCell (new Paragraph ("张三",fontChi));
table.addCell (new Paragraph ("总成绩",fontChi));
table.addCell (new Paragraph ("160",fontChi));
table.addCell (new Paragraph ("学号",fontChi));
PdfPCell cell2 = new PdfPCell (new Paragraph ("00000002",fontChi));
cell2.setColspan (3);
table.addCell (cell2);
table.addCell (new Paragraph ("姓名",fontChi));
table.addCell (new Paragraph ("李四",fontChi));
table.addCell (new Paragraph ("总成绩",fontChi));
table.addCell (new Paragraph ("167", fontChi));
document.add(table);
//5.关闭文档
document.close();
注释已经很详细了,说一下中文包的问题,按照正常的流程走下来,会报:Font 'STSong-Light' with 'UniGB-UCS2-H' is not recognized.我理解的大概是语言包没找到吧。因为iText5.X之前,引用iTextAsian.jar中的语言包是在com/lowagie/text/pdf/fonts,而现在是从com/itextpdf/text/pdf/fonts加载的,但是我又不知道最新的包在哪下,所以直接在包中将lowagie改成itextpdf,运行OK。
分享到:
相关推荐
itext 生成pdf 目录,itext 生成pdf 目录,itext 生成pdf 目录
Android使用iText生成pdf并读取pdf内容,iText是著名的开放源码的站点sourceforge的一个项目,可用来生成Pdf文件和读取Pdf文件内容.
NULL 博文链接:https://aa00aa00.iteye.com/blog/1124216
html渲染页面转换为pdf并设置页眉,页码,水印,目录,二维码
利用itext 生成pdf 文件,可以自定义生成的格式,字体的大小,颜色
NULL 博文链接:https://x125858805.iteye.com/blog/2239773
itextpdf-5.5.10.jar、itext-asian-5.2.0.jar、iText中文帮助、iText英文帮助文档 以及生成PDF文件时生成表格时单元格合并处理方法
NULL 博文链接:https://yizhaorong.iteye.com/blog/2157848
用itext生成pdf文档,生成的内容有表格形式,文本形式,设置字体样式,文档页边距。
通过iText不仅可以生成PDF或rtf的文档,而且可以将XML、Html文件转化为PDF文件。 iText的安装非常方便,下载iText.jar文件后,只需要在系统的CLASSPATH中加入iText.jar的路径,在程序中就可以使用iText类库了。
bcprov-jdk15-139.jar 加密时用到。 iText-2.1.2u.jar Itext包。 iTextAsian.jar 在导入中文是要用到。 博文链接:https://pirateyk.iteye.com/blog/196100
利用iText五步创建一个PDF文件:helloword。 第一步,创建一个 iTextSharp.text.Document对象的实例: Document document = new Document(); 第二步,为该Document创建一个Writer实例: PdfWriter.getInstance...
Java iText 生成pdf文档源代码(包括插入文本、表格、图像)
通过iText不仅可以生成PDF或rtf的文档,而且可以将XML、Html文件转化为PDF文件。 iText的安装非常方便,在http://www.lowagie.com/iText/download.html - download 网站上下载iText.jar文件后,只需要在系统的...
iText是著名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库。通过iText不仅可以生成PDF或rtf的文档,而且可以将XML、Html文件转化为PDF文件。
这是一个itext生成pdf水印的例子。其中需要几个文件。
iText 用JAVA生成PDF的JAR包 很好用 包含itext-1.4.8.jar和iTextAsian.jar
内含三个jar包,利用itext在网页上生成pdf文件必备的jar包,把它打包在一块,比较方便,需要的直接下载
C#生成电子发票PDF文件的样例(使用了iText7), 以指定的模板,来填充发票的数据,以正规发票的格式生成。
gradle项目,首次使用请先下载jar包(右键项目→Gradle→Refresh),不然报错!