docx4j学习笔记(3)
来源:互联网 发布:wlan直连软件 编辑:程序博客网 时间:2024/06/02 12:03
下面是一个获取本地所有字体,然后写入docx文件的例子。
不过看起来没有什么实用价值。
package me.test.docx4j;import java.io.File;import java.util.Map;import org.docx4j.fonts.PhysicalFont;import org.docx4j.fonts.PhysicalFonts;import org.docx4j.jaxb.Context;import org.docx4j.openpackaging.packages.WordprocessingMLPackage;import org.docx4j.openpackaging.parts.WordprocessingML.MainDocumentPart;import org.docx4j.wml.Body;import org.docx4j.wml.Document;import org.docx4j.wml.ObjectFactory;import org.docx4j.wml.P;import org.docx4j.wml.R;import org.docx4j.wml.RFonts;import org.docx4j.wml.RPr;import org.docx4j.wml.Text;import org.junit.Test;/** * 扫描所有的本地字体,并且用把字体英文名称写入docx文件。 * */public class DocxWithAllPhysicalFonts {@Testpublic void doTest() throws Exception {//扫描所有的字体文件PhysicalFonts.discoverPhysicalFonts();//获得所有的字体文件Map<String, PhysicalFont> fonts = PhysicalFonts.getPhysicalFonts();WordprocessingMLPackage pkg = WordprocessingMLPackage.createPackage();MainDocumentPart main = pkg.getMainDocumentPart();Document doc = main.getContents();Body body = doc.getBody();ObjectFactory factory = Context.getWmlObjectFactory();for(String filename : fonts.keySet()) {PhysicalFont font = fonts.get(filename);P p = factory.createP();R r = factory.createR();RPr rpr = factory.createRPr();RFonts rf = factory.createRFonts();rf.setAscii(font.getName());rf.setCs(font.getName());rf.setHAnsi(font.getName());rpr.setRFonts(rf);r.setRPr(rpr);Text t = factory.createText();t.setValue(font.getName());r.getContent().add(t);p.getContent().add(r);body.getContent().add(p);}pkg.save(new File(System.getProperty("user.dir"), "All Physical Fonts.docx"));}}
1 0
- docx4j学习笔记(3)
- docx4j学习笔记(1)
- docx4j学习笔记(2)
- docx4j学习笔记(4)
- docx4j学习笔记(5)
- docx4j学习笔记(6)
- docx4j-添加批注
- docx4j常用方法小结
- docx4j基本操作
- docx4j 处理word2007文档
- docx4j方法总结
- docx4j创建word文档
- 使用Docx4j创建word文档
- 使用Docx4j创建word文档
- docx4j-操作word常用方法
- freemarker+docx4j 生产自定义word
- Docx4j获取文档中的图片
- 通过docx4j完美合并docx
- 二叉搜索树(插入、删除、迭代遍历)
- 【数位DP】【hdu 4352】XHXJ's LIS
- jsp连接mysql数据库代码
- java学习day15
- OC使用引用计数的内存管理
- docx4j学习笔记(3)
- Python Exception的一个妙用
- #define新用法
- 【BZOJ】【P3192】【JLOI2013】【删除物品】【题解】【BIT】
- Javascript 的addEventListener()及attachEvent()区别分析
- windows下Django框架的搭建及测试教程
- 实习总结
- Eigrp md5认证
- ROS 教程之 navigation : 用 move_base 控制自己的机器人(2)