java用itext 做pdf报表
来源:互联网 发布:js textarea 编辑高亮 编辑:程序博客网 时间:2024/06/05 21:58
1.需要的工具包:
<dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId> <version>5.5.8</version></dependency>2.开始写了:
先建立一个文档
Document document = new Document(PageSize.A4, 50, 50, 50, 50);用A4纸建立了一个文档,页边距都是50;
建立一个输出流
PdfWriter writer = PdfWriter.getInstance(document,new FileOutputStream("D:\\aaa.pdf"));如果在web项目中获得了response,第二个参数
new FileOutputStream("D:\\aaa.pdf")可以写成
response.getOutputStream()引用字体
BaseFont baseFontChinese = BaseFont.createFont("C:\\Windows\\Fonts\\simfang.ttf", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);注意用的是中文字体,这样写就不会出现乱码或者不显示的情况
为字体设置样式
Font mtext= new Font(baseFontChinese , 24 , Font.BOLD,BaseColor.BLUE); Font ftext = new Font(baseFontChinese , 15 , Font.NORMAL,BaseColor.BLACK); Font ctext = new Font(baseFontChinese , 10 , Font.NORMAL,BaseColor.BLACK);在这里设置了三种样式的字体以便作为pdf文档的标题,副标题和内容的字体样式来用,第一个参数是字体的类型,第二个参数字体大小,第三个参数字体的粗细,倾斜,第四个参数字体的颜色.
建立一个文本块
<pre name="code" class="java">Chunk title = new Chunk("大标题",mtext);
Chunk类似html中的span,第二个参数就是要用的字体样式,刚才定义了三种,这里用最大号的.
建立一个段落
Paragraph p = new Paragraph();
p.add(<span style="font-family: Arial, Helvetica, sans-serif;">title</span><span style="font-family: Arial, Helvetica, sans-serif;">);</span>将文本块添加到段落中,段落是块级别的,如果在表格中要实现水平或垂直对齐,需要将chunk添加到段落中,将段落添加到表格的单元格中.
建立一个表格
PdfPTable table = new PdfPTable(2);int[] ints = {2,8};table.setWidthPercentage(100);table.setWidths(ints);这里新建了一个表格,共2列,两列的比例是2:8,表格宽度设置成了A4纸的可用宽度.这里的表格没有行的概念,单元格填充满一行后会从下一行开始.
建立单元格
PdfPCell pdfPCell = new PdfPCell(p);pdfPCell.setVerticalAlignment(1);pdfPCell.setHorizontalAlignment(1);pdfPCell.setPadding(5.0f);pdfPCell.setColspan(2);设置单元格中文本的垂直和水平对齐方式,设置单元格的内边距,跨2列,还可以设置边框等.
将单元格添加到表格
table.add(pdfPCell);将表格添加到文档
document.add(table);写完所有想写的内容后要记住关闭文档;
document.close();
3.总结
有时候用ireport做较灵活的报表时(比如动态改变布局)很困难,自己用itext提供的pdf工具可以做出更复杂的报表.另外用itext的渲染工具去渲染html转换成pdf速度会慢.建议直接用itext提供的工具做.
点击查看itextAPI
0 0
- java用itext 做pdf报表
- 用Java的iText实现PDF报表
- 报表iText 简介-Java PDF
- 报表iText 简介-Java PDF
- 使用ITEXT与JAVA生成PDF报表
- (例)Java生成PDF报表 iText
- Java使用itext生成PDF报表
- Java操作PDF报表-iText的使用
- Java使用IText PDF 导出报表
- 用itext生成pdf报表上篇
- Java做报表——JEditorPane+iText
- Java用itext操作PDF
- 用Java的iText实现PDF报表 (2007-10-31 17:23:51| 分类: java 技术)
- 基于BS的Java+iText导出PDF报表
- Java中使用iText组件制作pdf报表
- 基于BS的Java+iText导出PDF报表
- Java中使用iText组件制作pdf报表
- PDF模板报表导出(Java+Acrobat+itext)
- 码流 / 码率 / 比特率 / 帧速率 / 分辨率 / 高清
- SQlite
- next_permutation的思想和用法
- 第3周项目2-本月有几天
- 加法变乘法
- java用itext 做pdf报表
- Linux 安装jdk、tomcat
- C++复习要点总结之二——函数
- 电商-社区 无需开发的快速积木模式应用
- 第二周项目二-就拿胖子说事
- # img 图片垂直剧中
- 可装载内核模块-Loadable Kernel Module (LKM)
- Service学习笔记
- app国际化