iText API操作doc文档
public void createDocContext(String file) throws DocumentException,IOException {
// 设置纸张大小
Document document = new Document(PageSize.A4);
// 建立一个书写器(Writer)与document对象关联,通过书写器(Writer)可以将文档写入到磁盘中
RtfWriter2.getInstance(document, new FileOutputStream(file));
document.open();
// 设置中文字体
BaseFont bfChinese = BaseFont.createFont();
// 标题字体风格
Font titleFont = new Font(bfChinese, 12, Font.BOLD);
// 正文字体风格
Font contextFont = new Font(bfChinese, 10, Font.NORMAL);
Paragraph title = new Paragraph("标题");
// 设置标题格式对齐方式
title.setAlignment(Element.ALIGN_CENTER);
title.setFont(titleFont);
document.add(title);
String contextString = "iText是一个能够快速产生PDF文件的java类库。"
+ " \n"// 换行 + "iText的java类对于那些要产生包含文本,"
+ "表格,图形的只读文档是很有用的。它的类库尤其与java Servlet有很好的给合。"
+ "使用iText与PDF能够使你正确的控制Servlet的输出。";
Paragraph context = new Paragraph(contextString);
// 正文格式左对齐
context.setAlignment(Element.ALIGN_LEFT);
context.setFont(contextFont);
// 离上一段落(标题)空的行数
context.setSpacingBefore(5);
// 设置第一行空的列数
context.setFirstLineIndent(20);
document.add(context);
// 利用类FontFactory结合Font和Color可以设置各种各样字体样式
Paragraph underline = new Paragraph("下划线的实现", FontFactory.getFont( FontFactory.HELVETICA_BOLDOBLIQUE, 18, Font.UNDERLINE, new Color(0, 0, 255)));
document.add(underline);
// 添加图片 Image.getInstance即可以放路径又可以放二进制字节流
Image img = Image.getInstance("d:\\1100002361095.png");
img.setAbsolutePosition(0, 0);
img.setAlignment(Image.RIGHT);// 设置图片显示位置
//img.scaleAbsolute(60, 60);// 直接设定显示尺寸
// img.scalePercent(50);//表示显示的大小为原尺寸的50%
// img.scalePercent(25, 12);//图像高宽的显示比例
// img.setRotation(30);//图像旋转一定角度
// 设置 Table 表格
Table aTable = new Table(3);
int width[] = { 25, 25, 50 };
aTable.setWidths(width);// 设置每列所占比例
aTable.setWidth(90); // 占页面宽度 90%
aTable.setAlignment(Element.ALIGN_CENTER);// 居中显示
aTable.setAlignment(Element.ALIGN_MIDDLE);// 纵向居中显示
aTable.setAutoFillEmptyCells(true); // 自动填满
aTable.setBorderWidth(1); // 边框宽度
aTable.setBorderColor(new Color(0, 125, 255)); // 边框颜色
aTable.setPadding(2);// 衬距,看效果就知道什么意思了
aTable.setSpacing(3);// 即单元格之间的间距
aTable.setBorder(2);// 边框 // 设置表头
Cell haderCell = new Cell("表格表头");
haderCell.setHeader(true);
haderCell.setColspan(3);
aTable.addCell(haderCell);
aTable.endHeaders();
Font fontChinese = new Font(bfChinese, 12, Font.NORMAL, Color.GREEN);
Cell cell = new Cell(new Phrase("这是一个测试的 3*3 Table 数据", fontChinese));
cell.setVerticalAlignment(Element.ALIGN_TOP);
cell.setBorderColor(new Color(255, 0, 0));
aTable.addCell(cell);
aTable.addCell(new Cell(img));
aTable.addCell(new Cell(img));
aTable.addCell(new Cell(img));
aTable.addCell(new Cell(img));
aTable.addCell(new Cell(img));
Cell cell3 = new Cell(new Phrase("一行三列数据"));
cell3.setColspan(3);
cell3.setVerticalAlignment(Element.ALIGN_CENTER);
aTable.addCell(cell3);
document.add(aTable);
document.add(new Paragraph("\n"));
// 添加图片 Image.getInstance即可以放路径又可以放二进制字节流
Image img1 = Image.getInstance("d:\\1100002361095.png");
img.setAbsolutePosition(0, 0);
img.setAlignment(Image.RIGHT);// 设置图片显示位置
//img.scaleAbsolute(60, 60);// 直接设定显示尺寸
// img.scalePercent(50);//表示显示的大小为原尺寸的50%
// img.scalePercent(25, 12);//图像高宽的显示比例
// img.setRotation(30);//图像旋转一定角度
document.add(img);
document.close();
}
public static void main(String[] args) {
ExportImageToDoc word = new ExportImageToDoc();
String file = "D:/demo1.doc";
try {
word.createDocContext(file);
} catch (DocumentException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
iText API操作doc文档相关推荐
- 使用swagger作为restful api的doc文档生成
初衷 记得以前写接口,写完后会整理一份API接口文档,而文档的格式如果没有具体要求的话,最终展示的文档则完全决定于开发者的心情.也许多点,也许少点.甚至,接口总是需要适应新需求的,修改了,增加了,这份 ...
- 使用swagger作为restful api的doc文档生成——从源码中去提取restful URL接口描述文档...
初衷 记得以前写接口,写完后会整理一份API接口文档,而文档的格式如果没有具体要求的话,最终展示的文档则完全决定于开发者的心情.也许多点,也许少点.甚至,接口总是需要适应新需求的,修改了,增加了,这份 ...
- PHP操作doc文档之PHPWord0.6.1
[住管系统] {根据用户在微信端对模板doc的选择来生成对应文档.例:用户勾选房屋类别为公租房,则需要在对应的表格中生成,不要再把公租房,廉租房两个选项一起生成} 解决办法:利用PHPWord0.6. ...
- 利用iText.jar操作pdf文档
1.需要的jar包 2.如何解决中文不能输出的方法(异常分析) iText 5.0.1生成pdf,加入iTextAsian.jar 出现异常 Font 'STSong-Light' with 'Uni ...
- itext操作pdf文档
关于itext操作pdf文档 pdf基本操作 自己点击链接去看下就会了 java使用itext生成pdf 再不行,去看官方文档 itext Api 直接找到com.itextpdf.text.pdf这 ...
- itext库产生word文档示例(.doc)
itext库生产word文档示例 1 //设置中文字体------------------------------------------------2 BaseFont bfChinese = Ba ...
- java实现保存合同模板_Java中常用到的文件操作那些事(一)——替换doc文档模板,生成真实合同案例...
工作中,我们时常会遇到一些操作文件的操作,比如在线生成合同模板,上传/下载/解析Excel,doc文档转为pdf等操作.本文就已工作中遇到的在线生成合同为例,简要地介绍一种文档替换写法. 本文目的:给 ...
- python操作word文档(python-docx)
python操作word文档(python-docx) 1. 效果图 1.1 python-docx文档标题段落(等级.加粗.斜体.居中)效果图 1.2 python-docx字体(加粗.斜体.居中. ...
- 【python自动化办公01】word操作-新建文档
点击上方"AI搞事情"关注我们 Python操作Word(Win32com)https://zhuanlan.zhihu.com/p/67543981 Office VBA 参考h ...
- Java操作Word文档
Java 生成 Word 的几种方案 参考 主要有这么一些工具可以使用 Jacob.Apache POI.Java2word.iText,还有一种方法是使用XML作为模板. 使用 XML 的思 ...
最新文章
- LeetCode简单题之重新分配字符使所有字符串都相等
- 深度研报:六大视角解读人工智能,AI岂止于技术
- 【中国剩余定理】POJ 1006 HDU 1370 Biorhythms
- 2、Java Swing JFrame和JPanel:窗口容器和面板容器
- SAP Spartacus select option默认选择的实现
- thinkcmf ajax,thinkcmfx 中如何用jquery ajax提交数据,自己尝试去做之后,还是没法提交,求助!...
- 2020-11-11
- NSX控制平面和静态路由更新流程2
- 芯原创始人戴伟民:嵌入式人工智能与芯粒的历史机遇
- Restlet学习资源
- UG12.0运动仿真分析基础到精通视频教程
- 新手必备的15款渲染器,超级干货不要错过
- 使用hydra破解密码
- 分享新作:休闲小游戏『Flying Stone』
- MySQL - 全局锁、表级锁、行级锁、元数据锁、自增锁、意向锁、共享锁、独占锁、记录锁、间隙锁、临键锁、死锁
- Blender渲染线框图
- 活动目录之故障解决:域控制器不同步处理办法
- element-ui element-plus trap-focus - 分析
- 最小二乘估计矩阵形式的推导
- csgo如何录制高清的视频?