目錄是一種能夠快速、有效地幫助讀者了解文檔或書籍主要內(nèi)容的方式。在Word中,插入目錄首先需要設(shè)置相應(yīng)段落的大綱級(jí)別,根據(jù)大綱級(jí)別來生成目錄表。本文中生成目錄分2種情況來進(jìn)行:
成都創(chuàng)新互聯(lián)是一家朝氣蓬勃的網(wǎng)站建設(shè)公司。公司專注于為企業(yè)提供信息化建設(shè)解決方案。從事網(wǎng)站開發(fā),網(wǎng)站制作,網(wǎng)站設(shè)計(jì),網(wǎng)站模板,微信公眾號(hào)開發(fā),軟件開發(fā),微信小程序,十載建站對(duì)房屋鑒定等多個(gè)方面,擁有豐富的網(wǎng)站營(yíng)銷經(jīng)驗(yàn)。
1.文檔沒有設(shè)置大綱級(jí)別,生成目錄前需要手動(dòng)設(shè)置
2.文檔已設(shè)置大綱級(jí)別,通過域代碼生成目錄
使用工具:
•Free Spire.Doc for Java 2.0.0 (免費(fèi)版)
•IntelliJ IDEA
工具獲取途徑1:通過官網(wǎng)下載jar文件包,解壓并導(dǎo)入jar文件到IDEA程序。
工具獲取途徑2:通過Maven倉庫導(dǎo)入到Maven項(xiàng)目中,參考導(dǎo)入方法。
Java示例代碼(供參考)
【示例1】手動(dòng)設(shè)置大綱級(jí)別并生成目錄
import com.spire.doc.*; import com.spire.doc.documents.BuiltinStyle; import com.spire.doc.documents.HorizontalAlignment; import com.spire.doc.documents.Paragraph; import com.spire.doc.fields.TextRange; import java.awt.*; public class AddToc { public static void main(String[]args){ //加載測(cè)試文檔 Document doc = new Document("test.docx"); //在文檔最前面插入一個(gè)段落,寫入文本并格式化 Paragraph parainserted = new Paragraph(doc); TextRange tr= parainserted.appendText("目 錄"); tr.getCharacterFormat().setBold(true); tr.getCharacterFormat().setTextColor(Color.gray); doc.getSections().get(0).getParagraphs().insert(0,parainserted); parainserted.getFormat().setHorizontalAlignment(HorizontalAlignment.Center); //設(shè)置文檔中指定段落的大綱級(jí)別 doc.getSections().get(0).getParagraphs().get(2).applyStyle(BuiltinStyle.Heading_1); doc.getSections().get(0).getParagraphs().get(3).applyStyle(BuiltinStyle.Heading_2); doc.getSections().get(0).getParagraphs().get(5).applyStyle(BuiltinStyle.Heading_2); doc.getSections().get(0).getParagraphs().get(7).applyStyle(BuiltinStyle.Heading_2); doc.getSections().get(0).getParagraphs().get(13).applyStyle(BuiltinStyle.Heading_2); doc.getSections().get(0).getParagraphs().get(14).applyStyle(BuiltinStyle.Heading_3); doc.getSections().get(0).getParagraphs().get(15).applyStyle(BuiltinStyle.Heading_3); //添加目錄 doc.getSections().get(0).getParagraphs().get(0).appendTOC(1,3); //更新目錄表 doc.updateTableOfContents(); //保存文檔 doc.saveToFile("AddToc.docx",FileFormat.Docx_2010); } }
目錄生成效果:
【示例2】已設(shè)置大綱級(jí)別,通過域代碼直接生成目錄
import com.spire.doc.Document; import com.spire.doc.FileFormat; import com.spire.doc.documents.HorizontalAlignment; import com.spire.doc.documents.Paragraph; import com.spire.doc.fields.TableOfContent; import com.spire.doc.fields.TextRange; import java.awt.*; public class AddTOC2 { public static void main (String[] args){ //加載已設(shè)置大綱級(jí)別的測(cè)試文檔 Document doc = new Document("sample.docx"); //在文檔最前面插入一個(gè)段落,寫入文本并格式化 Paragraph parainserted = new Paragraph(doc); TextRange tr= parainserted.appendText("目 錄"); tr.getCharacterFormat().setBold(true); tr.getCharacterFormat().setTextColor(Color.gray); doc.getSections().get(0).getParagraphs().insert(0,parainserted); parainserted.getFormat().setHorizontalAlignment(HorizontalAlignment.Center); //通過域代碼添加目錄表 TableOfContent toc = new TableOfContent(doc, "{\\o \"1-3\" \\h \\z \\u}"); doc.getSections().get(0).getParagraphs().get(0).appendTOC(1,3); doc.updateTableOfContents(); //保存文檔 doc.saveToFile("AddToc2.docx", FileFormat.Docx_2010); } }
目錄生成效果:
PS:關(guān)于通過域代碼生成目錄,可參考這篇文章,獲取更多目錄設(shè)置方法
總結(jié)
以上所述是小編給大家介紹的Java 添加Word目錄的2種方法示例代碼詳解,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)創(chuàng)新互聯(lián)網(wǎng)站的支持!
如果你覺得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
分享標(biāo)題:Java添加Word目錄的2種方法示例代碼詳解
網(wǎng)址分享:http://muchs.cn/article24/pdjgce.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計(jì)、營(yíng)銷型網(wǎng)站建設(shè)、用戶體驗(yàn)、App開發(fā)、Google、全網(wǎng)營(yíng)銷推廣
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)