天天看點

Java 操作Word書簽(二):添加文本、圖檔、表格到書簽内容

在Java操作Word書簽(一)中介紹了給Word中的特定段落或文字添加書簽、讀取及删除已有書簽的方法,本文将繼續介紹Java 操作Word書簽的方法,即如何給已有的書簽添加内容,包括添加文本、圖檔、表格等。

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

Jar檔案擷取及導入:

方法1: 通過官網下載下傳jar檔案包。下載下傳後,解壓檔案。并将lib檔案夾下的Spire.Doc.jar檔案導入到java程式。參考如下導入效果:

Java 操作Word書簽(二):添加文本、圖檔、表格到書簽内容

方法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();
    }
}      

文本、圖檔添加效果:

Java 操作Word書簽(二):添加文本、圖檔、表格到書簽内容

【示例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();
    }
}      

表格添加效果:

Java 操作Word書簽(二):添加文本、圖檔、表格到書簽内容

(本文完)

轉載請注明出處!