博客
关于我
Java 添加Word脚注、尾注
阅读量:409 次
发布时间:2019-03-06

本文共 3122 字,大约阅读时间需要 10 分钟。

Word中的脚注和尾注都是对文本的补充说明。脚注一般是附在书页最左下端的注文,用以解释、说明特定内容;而尾注则是位于文档末尾,用于列出引文的出处。脚注和尾注都可以是针对某些文字或者段落来添加。本文中,就将演示如何通过Java程序来添加脚注及尾注到Word文档。

注:添加脚注时,本文分给指定文本添加脚注、给指定段落添加脚注;同理,添加尾注时,也可以指定文本或段落(可参照文中对脚注的添加方法)。

 

使用工具:Free Spire.Doc for Java (免费版)

Jar文件获取及导入:

方法1通过官网jar文件包,并解压。解压文件后,将lib文件夹中的Spire.Doc.jar文件导入Java程序。

方法2通过maven仓库

 

Java代码示例(供参考)

import com.spire.doc.*;import com.spire.doc.documents.Paragraph;import com.spire.doc.documents.TextSelection;import com.spire.doc.fields.Footnote;import com.spire.doc.fields.TextRange;import java.awt.*;public class AddFootnoteEndnote {    public static void main(String[] args){        //加载测试文档        Document doc = new Document("test.doc");        //添加脚注1:给指定段落添加脚注        Paragraph para1 = doc.getSections().get(0).getParagraphs().get(2);//获取段落        Footnote footnote1 = para1.appendFootnote(FootnoteType.Footnote);//添加脚注        TextRange text1 = footnote1.getTextBody().addParagraph().appendText("详见附件内容");        text1.getCharacterFormat().setFontName("楷书");//格式化脚注标签及脚注内容        text1.getCharacterFormat().setFontSize(10);        text1.getCharacterFormat().setTextColor(new Color(255, 140, 0));        footnote1.getMarkerCharacterFormat().setFontName("楷书");        footnote1.getMarkerCharacterFormat().setFontSize(14);        footnote1.getMarkerCharacterFormat().setTextColor(new Color(0, 0, 139));        //添加脚注2:给指定文本添加脚注        TextSelection[] selections = doc.findAllString("消除缺陷", false, true);        for (TextSelection selection : selections) {            TextRange range = selection.getAsOneRange();            Paragraph para2 = range.getOwnerParagraph();            Footnote footnote2 = para2.appendFootnote(FootnoteType.Footnote);            int index = para2.getChildObjects().indexOf(range);            para2.getChildObjects().insert(index + 1, footnote2);            TextRange text2 = footnote2.getTextBody().addParagraph().appendText("请查看操作手册");            text2.getCharacterFormat().setFontName("Arial Black");            text2.getCharacterFormat().setFontSize(10);            text2.getCharacterFormat().setTextColor(new Color(153, 50, 204));            footnote2.getMarkerCharacterFormat().setFontName("Calibri");            footnote2.getMarkerCharacterFormat().setFontSize(14);            footnote2.getMarkerCharacterFormat().setTextColor(new Color(0, 0, 139));         //添加尾注:给指定段落添加尾注(给指定文本添加尾注可参考以上添加脚注的代码方法)         Paragraph para3 = doc.getSections().get(0).getParagraphs().get(15);         Footnote endnote= para3.appendFootnote(FootnoteType.Endnote);         TextRange text3 = endnote.getTextBody().addParagraph().appendText("引用自刘玲《操作手册》");         text3.getCharacterFormat().setFontName("Arial Black");         text3.getCharacterFormat().setFontSize(10);         text3.getCharacterFormat().setTextColor(new Color(135, 206, 204));         endnote.getMarkerCharacterFormat().setFontName("Calibri");         endnote.getMarkerCharacterFormat().setFontSize(14);         endnote.getMarkerCharacterFormat().setTextColor(new Color(0, 0, 139));         //保存文档         doc.saveToFile("result.docx",FileFormat.Docx_2010);        }    }}

脚注添加效果:

尾注添加效果:

 

(本文完)

转载请注明出处!

 

你可能感兴趣的文章
MySQL批量插入数据遇到错误1213的解决方法
查看>>
mysql技能梳理
查看>>
MySQL报Got an error reading communication packets错
查看>>
Mysql报错Can‘t create/write to file ‘/tmp/#sql_3a8_0.MYD‘ (Errcode: 28 - No space left on device)
查看>>
MySql报错Deadlock found when trying to get lock; try restarting transaction 的问题解决
查看>>
MySQL报错ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘
查看>>
Mysql报错Packet for query is too large问题解决
查看>>
mysql报错级别_更改MySQL日志错误级别记录非法登陆(Access denied)
查看>>
Mysql报错:too many connections
查看>>
MySQL报错:无法启动MySQL服务
查看>>
mysql授权用户,创建用户名密码,授权单个数据库,授权多个数据库
查看>>
mysql排序查询
查看>>
MySQL排序的艺术:你真的懂 Order By吗?
查看>>
MySQL排序的艺术:你真的懂 Order By吗?
查看>>
Mysql推荐书籍
查看>>
Mysql插入数据从指定选项中随机选择、插入时间从指定范围随机生成、Navicat使用存储过程模拟插入测试数据
查看>>
MYSQL搜索引擎
查看>>
mysql操作数据表的命令_MySQL数据表操作命令
查看>>
mysql操作日志记录查询_如何使用SpringBoot AOP 记录操作日志、异常日志?
查看>>
MySQL支持的事务隔离级别,以及悲观锁和乐观锁的原理和应用场景?
查看>>