在Java操作Word书签(一)中介绍了给Word中的特定段落或文字添加书签、读取及删除已有书签的方法,本文将继续介绍Java 操作Word书签的方法,即如何给已有的书签添加内容,包括添加文本、图片、表格等。
使用工具:Free Spire.Doc for Java (免费版)
Jar****文件获取及导入:
方法****1****: 通过官网下载jar文件包。下载后,解压文件。并将lib文件夹下的Spire.Doc.jar文件导入到java程序。参考如下导入效果:
方法****2****:可通过maven仓库安装导入。可参考安装导入方法。
Java****代码示例
【示例****1****】添加图片、文本到书签
import com.spire.doc.*;
import com.spire.doc.documents.BookmarksNavigator;
import com.spire.doc.documents.Paragraph;
import com.spire.doc.documents.TextWrappingStyle;
import com.spire.doc.fields.DocPicture;
public class AddImgToBookmarkcontent {
public static void main(String[]args){
//加载包含书签的文档
Document doc = new Document();
doc.loadFromFile("test.docx");
//定位到指定书签位置起始标签位置,插入图片
BookmarksNavigator bookmarksNavigator1 = new BookmarksNavigator(doc);
bookmarksNavigator1.moveToBookmark("bookmark1",true,false);
Paragraph para = new Paragraph(doc);
DocPicture picture = para.appendPicture("eth.png");
picture.setTextWrappingStyle(TextWrappingStyle.Through);
bookmarksNavigator1.insertParagraph(para);
//定位到指定书签位置末尾标签位置,插入文本
BookmarksNavigator bookmarksNavigator2 = new BookmarksNavigator(doc);
bookmarksNavigator2.moveToBookmark("bookmark1",false,true);
bookmarksNavigator2.insertText("新插入的文本!!!");
//保存文档
doc.saveToFile("addImgToBookmarkcontent.docx",FileFormat.Docx_2013);
doc.dispose();
}
}
文本、图片添加效果:
【示例2】添加表格到书签内容
import com.spire.doc.*;
import com.spire.doc.documents.*;
import com.spire.doc.fields.TextRange;
public class AddTableToBookmarkcontent {
public static void main(String[]args){
//加载包含书签的文档
Document doc = new Document();
doc.loadFromFile("test.docx");
//声明数组内容
String[][] data =
{
new String[]{"班级", "姓名", "学号"},
new String[]{"1班", "刘楠", "Y12534"},
new String[]{"2班", "刘莉", "Y12547"},
new String[]{"3班", "方红", "Y12365"},
};
//创建表格
Table table = new Table(doc, true);
table.resetCells(4, 3);
for (int i = 0; i < data.length; i++) {
TableRow dataRow = table.getRows().get(i);
for (int j = 0; j < data[i].length; j++) {
TextRange range = dataRow.getCells().get(j).addParagraph().appendText(data[i][j]);
range.getOwnerParagraph().getFormat().setHorizontalAlignment(HorizontalAlignment.Center);
range.getCharacterFormat().setFontName("楷体");
dataRow.getRowFormat().setHorizontalAlignment(RowAlignment.Center);
dataRow.getCells().get(j).getCellFormat().setVerticalAlignment(VerticalAlignment.Middle);
}
}
//定位到指定书签位置,添加表格
BookmarksNavigator bookmarksNavigator = new BookmarksNavigator(doc);
bookmarksNavigator.moveToBookmark("bookmark1");
bookmarksNavigator.insertTable(table);
//保存文档
doc.saveToFile("addTableToBookmarkcontent.docx",FileFormat.Docx_2013);
doc.dispose();
}
}
表格添加效果:
(本文完)
转载请注明出处!