- 浏览: 228418 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
Navee:
抄来抄去,还是没有实质解决问题
Ext 树.叶子查找与非叶子查找 -
haizhiguang:
我按照你的代码自己写了一个试试,没看出我的代码跟你的有什么区别 ...
JAVA 鼠标画直线举行椭圆 -
WHW1984:
整个工程目录结构是咋样的 兄弟
Jetty -- 安全认证 -- 三种配置方法 -
shixianwei:
...
Jetty Oracle DataSource Config(Jetty Oracle 数据源配置) -
cpusoft:
http://cuiyingfeng.blog.ccidnet ...
JNI(java 调用 本地接口)Tomcat的JNI库加载问题解决办法
要生成pdf文件,在网上查了下资料,首选iText,跟着大家走,我也iText一把。
1:把字型编程A4横向
2:在PDF文件中加入表格
3:向表格里填数据, 例子
4:标题和表格组合
5:分页
6:合并PDF文件,由于往一个document里加内容只能是顺序往下加,而我的summary页要最后才能算出来,但是summary页又要放在第一页
所以我不得不先把body生成一个pdf文件,然后summary在生成一个文件,然后把两个文件合并成同一个文件。
1:把字型编程A4横向
Document document = new Document(PageSize.A4.rotate());
2:在PDF文件中加入表格
float[] widths = {0.05f,0.29f, 0.05f, 0.05f, 0.14f, 0.03f, 0.04f,0.04f, 0.05f, 0.05f,0.08f,0.08f, 0.05f}; //new 一个13列的table PdfPTable table = new PdfPTable(13); //设置table每一列的宽度,widths里写的是百分比,他们加和需要是1 table.setWidths(widths); //设置表格在页面上的宽度,设成100表示可以表格填满页面,但是要去掉页面margin table.setWidthPercentage(100); //设置表格上端的空白距离,类似css中的margin-top:xxpx;这样在给表格加上标题后,标题就不会跟表格重叠在一起了。 table.setSpacingBefore(3f); float[] widths = {0.05f,0.29f, 0.05f, 0.05f, 0.14f, 0.03f, 0.04f,0.04f, 0.05f, 0.05f,0.08f,0.08f, 0.05f}; //new 一个13列的table PdfPTable table = new PdfPTable(13); //设置table每一列的宽度,widths里写的是百分比,他们加和需要是1 table.setWidths(widths); //设置表格在页面上的宽度,设成100表示可以表格填满页面,但是要去掉页面margin table.setWidthPercentage(100); //设置表格上端的空白距离,类似css中的margin-top:xxpx;这样在给表格加上标题后,标题就不会跟表格重叠在一起了。 table.setSpacingBefore(3f);
3:向表格里填数据, 例子
for(int i = 0; i<26; i++) { table.table.addCell(i+""); } for(int i = 0; i<26; i++) { table.table.addCell(i+""); } 这样就会往表格里填上2行数据,这个api比较简单,不用向jxl/poi 那里那样还有明确写出到底要往那个cell填
4:标题和表格组合
document.add(new Paragraph(titleWorkhour, FontFactory.getFont(FontFactory.HELVETICA, 12, Font.BOLD, new Color(0, 0, 0)))); //由于设置了table.setSpacingBefore(3f);所以table跟标题不会重合。 document.add(table); document.add(new Paragraph(titleWorkhour, FontFactory.getFont(FontFactory.HELVETICA, 12, Font.BOLD, new Color(0, 0, 0)))); //由于设置了table.setSpacingBefore(3f);所以table跟标题不会重合。 document.add(table);
5:分页
document.newPage();
6:合并PDF文件,由于往一个document里加内容只能是顺序往下加,而我的summary页要最后才能算出来,但是summary页又要放在第一页
所以我不得不先把body生成一个pdf文件,然后summary在生成一个文件,然后把两个文件合并成同一个文件。
private void concatenateSummary(String[] args, String finalFile) { try { int pageOffset = 0; ArrayList master = new ArrayList(); int f = 0; String outFile = finalFile; Document document = null; PdfCopy writer = null; while (f < args.length) { // we create a reader for a certain document PdfReader reader = new PdfReader(args[f]); reader.consolidateNamedDestinations(); // we retrieve the total number of pages int n = reader.getNumberOfPages(); List bookmarks = SimpleBookmark.getBookmark(reader); if (bookmarks != null) { if (pageOffset != 0) SimpleBookmark.shiftPageNumbers(bookmarks, pageOffset, null); master.addAll(bookmarks); } pageOffset += n; if (f == 0) { // step 1: creation of a document-object document = new Document(reader.getPageSizeWithRotation(1)); // step 2: we create a writer that listens to the document writer = new PdfCopy(document, new FileOutputStream(outFile)); // step 3: we open the document document.open(); } // step 4: we add content PdfImportedPage page; for (int i = 0; i < n; ) { ++i; page = writer.getImportedPage(reader, i); writer.addPage(page); } PRAcroForm form = reader.getAcroForm(); if (form != null) writer.copyAcroForm(reader); f++; } if (!master.isEmpty()) writer.setOutlines(master); // step 5: we close the document document.close(); } catch(Exception e) { e.printStackTrace(); } }
发表评论
-
Java对Json的工具类 JsonUtil 绿色版
2011-04-19 10:48 2391绿色版,无污染,无需下载第三方包.转自某某博客. packa ... -
模型是是搜索
2011-03-17 00:37 1075#!/usr/bin/env python # -*- co ... -
Java 调用浏览器访问指定URL. 多平台
2011-02-16 13:46 2865/////////////////////////////// ... -
Java Web 项目读取配置文件
2010-10-28 18:18 2794在开发过程中,我们经常会遇到读取配置文件的情况,对于配置文件的 ... -
j=j++与j=++j的区别
2010-09-21 16:28 1733jvm里面有两个存储区,一个是暂存区(是一个堆栈),另一个是变 ... -
JSON与JAVA数据的转换
2010-09-15 14:29 947JSON与JAVA数据的转换 关键字: json java ... -
对web.xml 的几点配置心得。包括mime-mapping
2010-08-31 23:09 18921.指定了自己的javaEncoding (参考 http:/ ... -
JasperReports学习笔记
2010-08-30 13:03 1273reference: http://www.javaworl ... -
JFreeChart 教程二
2010-08-25 16:22 1115JFreeChart是一组功能强大、灵活易用的Java绘图AP ... -
JFreeChart 教程一
2010-08-25 16:20 950以下是需要画一个折线图查到的资料(放到这里备用): 原文地址 ... -
引入多个Jar~
2010-08-19 13:49 502Zhe画 13:55:50 java命令引入jar时可以- ... -
Jetty7 Continuation 学习(一)
2010-08-19 08:44 1839Jetty7发布了,Jetty7支持servlet 2.5,且 ... -
jetty快速入门
2010-08-17 15:13 2791(0) Jetty 是一个开源的ser ... -
JNI(java 调用 本地接口)Tomcat的JNI库加载问题解决办法
2010-08-15 10:17 6655Tomcat的Release Notes 里有这么一段话: = ... -
Java入门--认识理解Java中native方法
2010-08-15 09:38 919Java不是完美的,Jav ... -
用digester简化xml文档处理
2010-08-15 00:21 958用digester简化xml文档处理java 2010-05- ... -
关于URL特殊符号的问题~
2010-08-14 15:20 1008HTML 格式编码的实用工具类。该类包含了将 String 转 ... -
InheritableThreadLocal 线程变量
2010-07-29 11:40 2261ThreadLocal有个缺陷,在子线程里无法访问父线程的变量 ... -
java基础补疑
2010-07-28 11:53 790java语言的关键字,变量修饰符,如果用transient声明 ... -
转自Javaeye论坛~作者
2010-07-28 09:53 901只身在他乡,常常想起我的父亲,在我们当地他是出名的木匠师傅,一 ...
相关推荐
相关教程 iText 简介 iText创建文档简介 iText入门实例 IText使用PDF模板输出报表的实践 我和iText第一次亲密接触 相关JAR iText-2.1.7.jar(核心) iTextAsian.jar(中文支持) iText-rups-2.1.7.jar iText-rtf-...
IText 和 ITextAsian 的开发包
itext-1.01.jar和iTextAsian.jar这两个包是支持 HTML、RTF 和 XML 文档的生成,此外还能够生成 PDF 文档
适用于android,编译提示有问题的话,在app的Build.gradle的android下加如下代码: packagingOptions { exclude 'com/itextpdf/text/pdf/fonts/cmap_info.txt' }
iText1.2.7、iText-rtf2.1.7、iTextAsian
iText5.5.12 源码工程和itext签名文档(英文)。签名文档是官方的,还是蛮有用的。iText5.5.12 源码工程和itext签名文档(英文)。签名文档是官方的,还是蛮有用的。
使用IText生成PDF和WORD文档 包括源码和IText所需jar包
itext-asian-5.2.0.jar和itextpdf-5.5.5.jar 用于java生成pdf的各种开发 1
多个版本的itext-jar包, itext-2.0.4/itext-2.1.5/itext-2.1.7
iText-2.1.7.jar资源包,可以调用方法实现生成PDF文件! iTextAsian.jar可以解决生成PDF文件为中文的问题!
使用iText填充pdf表单用到的itext-1.3.1.jar和iTextAsian.jar。如果不引用iTextAsian.jar程序编译不会出错,但运行会出错,因为"STSong-Light" font依赖iTextAsian.jar
iText7jar和英文文档,以及itext5的一些文档。建议大家去官网看itext7,改动有点大。我也在摸索中。
itextasian 和 itext-2.0.8 和 itext-rtf-2.1.7
itext中文: public static void main(String[] args) { try { Document document = new Document(); OutputStream os = new FileOutputStream(new File("C:\\Users\\Administrator\\Desktop\\test.pdf")); ...
itext 生成pdf 目录,itext 生成pdf 目录,itext 生成pdf 目录
itext2.17
iText是著名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库。通过iText不仅可以生成PDF或rtf的文档,而且可以将XML、Html文件转化为PDF文件。 iText的安装非常方便,下载iText.jar文件后,...
itext 操作PDF需要的jar包
本人iText7博客系列第一章的源代码工程,详情请访问我的博客
IText7jar集合