Itext设置导出word文件的字体
首先,要导入Itext的三个jar包:iText-2.1.7.jar,itext-rtf-2.1.7.jar,iTextAsian.jar;
其次,Itext里面设置导出word文件的字体,用RtfFont这个类的初始化方法进行设置;
RtfFont font =new RtfFont("仿 宋", 12, Font.NORMAL, Color.BLACK);
这个构造方法里面:第一个参数是字体类型,第二个参数是字体大小,第三个参数是字体格式是加粗还是正常,第四个参数是字体的颜色
仿宋:new RtfFont("仿 宋", 12, Font.NORMAL, Color.BLACK);
黑体:new RtfFont("黑 体", 16, Font.BOLD, Color.BLACK);
宋体:new RtfFont("宋 体", 16, Font.NORMAL, Color.BLACK);
微软雅黑:new RtfFont("微 软 雅 黑", 16, Font.NORMAL, Color.BLACK);
仿宋_GB2312:new RtfFont("仿宋_GB2312", 16, Font.NORMAL, Color.BLACK);
注:这个时候导出的字体是“宋体 (中文正文)”
这里的字体类型可以自己一一尝试,字体类型书写的时候中间加一个空格(比如:“黑体”这样写是不起作用的,必须写成“黑 体”)
public class TestDoc {
/**
* @param args
*/
public static void main(String[] args) {
exportDoc("D:\\test.doc");
}
public static void exportDoc(String fileName){
try {
Document doc = new Document();
RtfWriter2.getInstance(doc, new FileOutputStream(fileName));
// 打开文档
doc.open();
//设置页边距,上、下25.4毫米,即为72f,左、右31.8毫米,即为90f
doc.setMargins(90f, 90f, 72f, 72f);
BaseFont baseFont = BaseFont.createFont("STSongStd-Light", "UniGB-UCS2-H", false);
//设置标题字体样式,粗体、二号、华文中宋
Font tfont = new Font(baseFont, 22, Font.BOLD); //标题的样式------宋体 (中文标题)二号 加粗
//构建标题,居中对齐,12f表示单倍行距
//RtfFont font =new RtfFont("黑 体", 16, Font.BOLD, Color.BLACK); //标题1的样式------黑体 加粗 三号
RtfFont font =new RtfFont("仿 宋", 12, Font.NORMAL, Color.BLACK); //标题2的样式------仿宋 加粗 三号
//RtfFont font =new RtfFont("仿 宋", 16, Font.NORMAL, Color.BLACK);//正文的样式------仿宋(三号 正常)
Paragraph title = DocStyleUtils.setParagraphStyle("测试Itext导出Word文档", tfont, 26f, Paragraph.ALIGN_CENTER);
//构建正文内容
StringBuffer contentSb = new StringBuffer();
contentSb.append("最近项目很忙,这个是项目中使用到的,所以现在总结一下,以便今后可以参考使用,");
contentSb.append("2011年4月27日 — 2011年5月20日,对以下技术进行使用,");
contentSb.append("Itext、");
contentSb.append("Excel、");
contentSb.append("Word、");
contentSb.append("PPT。");
//首行缩进2字符,行间距1.5倍行距
Paragraph bodyPar = DocStyleUtils.setParagraphStyle(contentSb.toString(), font, 32f, 26f);
Paragraph bodyEndPar = DocStyleUtils.setParagraphStyle("截至2011年4月28日,各种技术已经完全实现。", font, 32f, 26f);
//设置空行
Paragraph blankRow = new Paragraph(26f, " ", font);
Paragraph deptPar = DocStyleUtils.setParagraphStyle("(技术开发部盖章)", font, 26f, Paragraph.ALIGN_RIGHT);
Paragraph datePar = DocStyleUtils.setParagraphStyle("2011-04-30", font, 26f, Paragraph.ALIGN_RIGHT);
//向文档中添加内容
doc.add(title);
doc.add(blankRow);
doc.add(bodyPar);
doc.add(bodyEndPar);
doc.add(blankRow);
doc.add(blankRow);
doc.add(blankRow);
doc.add(deptPar);
doc.add(datePar);
//最后一定要记住关闭
doc.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
Itext设置导出word文件的字体相关推荐
- js对页面进行动态编译以及生成导出word文件
ace编译器 安装 npm install ace-builds --save-dev 引入并挂载 在main.js中 // 引入ace编辑器组件 import ace from 'ace-build ...
- POI根据模板导出word文件,以及word转PDF,PDF转图片再插入PDF中(防止PDF被修改)
POI操作word和PDF POI根据模板导出word文件 word转PDF PDF转图片再插入PDF中(防止PDF被修改) POI根据模板导出word文件 一.制作word模版,${xxxx}是一会 ...
- 使用EasyPoi导出Word文件,使用@Excel注释导出实体对象图片的解决方案
目录 一.问题介绍 二.解决方案展示 1.准备Word模板文件 2.部分实体对象 3.重写EasyPoi中ExcelEntityParse类的createCells方法 4.导出Word文件的主逻辑 ...
- Java poi导出word文件
Java在导出word文件时主要对表格中内容垂直居中处理做以记录方便后续碰到类似问题解决. maven pom.xml中添加poi依赖 <!-- word.excel工具 --> < ...
- 使用freemarker模板引擎导出word文件
目录 第一步:创建Word模板 第二步:整理好数据,核对好数据要填充的位置 第三步:使用工具类生成word文件 工具类: 第一步:创建Word模板 创建需要的模板 另存为:单一网页文件 文件名最好改为 ...
- Typora导出word文件教程
使用typora可能会遇到需要导出word文件的需求.我们在typora中进行如下操作 如果你是第一次导出word文件,那么他会提示你让你安装pandoc这样一个插件,我提供一个地址 各种操作系统的的 ...
- Springboot--使用POI,根据word模板导出word文件
需求:根据一个word模板,在程序中替换模板中的参数,然后根据这个模板导出word文件. 引入POI对word操作的依赖: <dependency><groupId>org.a ...
- poi导出word文件(带表格)
poi导出word文件(带表格) 一.背景介绍 现有业务需求根据前端页面上所选的时间和列,来生成word表格,方便打印. 二.POM <dependency><groupId> ...
- 【Apache POI】Java Web根据模板导出word文件
最近工作中遇到一个需求:根据word模板文档导出word文件. 查阅了一些资料,发现Apache POI可以实现文档读写的功能,于是就研究了一下,总结如下: Apache-POI在线Javadoc:h ...
最新文章
- 《iBATIS 实战》——国内第一本iBATIS巨著(iBATIS之父撰写)
- 学习OpenGL:笔记一
- Zabbix3.X-Zabbix _Agent主动模式的监控(Active)
- android 版本权限差别,android apk 的root 权限和USB adb 权限的区别
- mysql查看日志命令_面对成百上千台服务器产生的日志,试试这款轻量级日志搬运神器!...
- solr 5.3.1 使用java_Apache Solr 5.3.1 发布下载,Java 全文搜索服务器
- JavaScript之实例练习(模态对话框详解)
- 队列的基本概念介绍以及典型应用示例
- idea环境下lombok插件的安装和使用
- proteus 仿真软件
- 最大同性恋交友网站 github 被微软收购,我不服!
- m3u8手机批量转码_M3U8批量转换app-M3U8批量转换MP4软件下载v1.0 安卓版-西西软件下载...
- 计算机科学研究的第一手段,实验研究类论文的研究方法(11种研究方法解析)...
- pandas——解决excel科学计数法问题
- canvas lineWidth1px问题
- 小程序 - canvas绘制海报
- 关闭数据库时SHUTDOWN: waiting for active calls to complete.处理
- 软件著作权的好处有哪些?软著含金量高吗?
- 安卓逆向学习资料推荐
- 一个表中的字段值用作另一个表的In查询条件
热门文章
- android 图片自适应,完美适配各分辨率手机
- Linux中free函数头文件,Linux C 堆内存管理函数malloc()、calloc()、realloc()、free()详解...
- Shell 判断文件是否存在的方法
- 高通 msm平台GPIO相关的device tree设置
- 2554: 巨巨来袭
- 7-6 寻找大富翁 (25分)
- Lucene搜索流程(2.IndexReader)
- 电视、空调新品齐发:小米发力AIoT大家电市场
- 卖家:亚马逊Prime Day热度不再
- SSL_read返回SSL_ERROR_WANT_READ怎么办?