最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java 添加Word目錄的2種方法示例代碼詳解

 更新時間:2019年06月18日 11:54:38   作者:E-iceblue  
目錄是一種能夠快速、有效地幫助讀者了解文檔或書籍主要內(nèi)容的方式。這篇文章主要介紹了Java 添加Word目錄的2種方法 ,需要的朋友可以參考下

目錄是一種能夠快速、有效地幫助讀者了解文檔或書籍主要內(nèi)容的方式。在Word中,插入目錄首先需要設(shè)置相應(yīng)段落的大綱級別,根據(jù)大綱級別來生成目錄表。本文中生成目錄分2種情況來進行:

1.文檔沒有設(shè)置大綱級別,生成目錄前需要手動設(shè)置

2.文檔已設(shè)置大綱級別,通過域代碼生成目錄

使用工具:

•Free Spire.Doc for Java 2.0.0 (免費版)
•IntelliJ IDEA

工具獲取途徑1:通過官網(wǎng)下載jar文件包,解壓并導入jar文件到IDEA程序。

工具獲取途徑2:通過Maven倉庫導入到Maven項目中,參考導入方法。

Java示例代碼(供參考)

【示例1】手動設(shè)置大綱級別并生成目錄

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){
  //加載測試文檔
  Document doc = new Document("test.docx");
  //在文檔最前面插入一個段落,寫入文本并格式化
  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è)置文檔中指定段落的大綱級別
  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è)置大綱級別,通過域代碼直接生成目錄

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è)置大綱級別的測試文檔
  Document doc = new Document("sample.docx");
  //在文檔最前面插入一個段落,寫入文本并格式化
  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種方法示例代碼詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

相關(guān)文章

  • Java中static和static?final的區(qū)別詳解

    Java中static和static?final的區(qū)別詳解

    這篇文章主要介紹了Java中static和static?final的區(qū)別詳解,開發(fā)時我們經(jīng)常用到static以及static?final來修飾我們的字段變量,那么他們到底有什么區(qū)別呢?其實他們的區(qū)別可以用使用字節(jié)碼文件來解析,需要的朋友可以參考下
    2023-10-10
  • Java利用SPI實現(xiàn)解耦的示例詳解

    Java利用SPI實現(xiàn)解耦的示例詳解

    SPI的全稱是服務(wù)提供接口,可以用其來啟動框架的擴展和替換組件。本文將利用SPI實現(xiàn)解耦,文中的示例代碼講解詳細,具有一定的借鑒價值,需要的可以參考一下
    2023-04-04
  • 使用Java找出兩個List中的重復元素三種方法

    使用Java找出兩個List中的重復元素三種方法

    在Java編程中,我們經(jīng)常需要找出兩個列表(List)中的重復元素,在本文中,我們將探討三種方法來實現(xiàn)這一目標,需要的朋友可以參考下
    2023-10-10
  • 解決IDEA Gradle構(gòu)建報錯''Cause: zip END header not found''

    解決IDEA Gradle構(gòu)建報錯''Cause: zip END header not found''

    這篇文章主要介紹了解決IDEA Gradle構(gòu)建報錯"Cause: zip END header not found"的問題,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02
  • SpringBoot中5種高大上的yml文件讀取方式

    SpringBoot中5種高大上的yml文件讀取方式

    本文主要介紹了SpringBoot中5種高大上的yml文件讀取方式,總結(jié)一下除了@Value和@ConfigurationProperties外,還能夠通過哪些方式,來讀取yml配置文件的內(nèi)容,感興趣的可以了解一下
    2022-03-03
  • SpringBoot實現(xiàn)向量數(shù)據(jù)庫優(yōu)化檢索的方案及示例

    SpringBoot實現(xiàn)向量數(shù)據(jù)庫優(yōu)化檢索的方案及示例

    在Spring?Boot中實現(xiàn)RAG(Retrieval-Augmented?Generation)的增強,可以從檢索優(yōu)化、生成優(yōu)化和系統(tǒng)架構(gòu)三個維度進行改進,本文給大家介紹了具體實現(xiàn)方案及示例,需要的朋友可以參考下
    2025-02-02
  • Java如何提高大量數(shù)據(jù)的處理性能

    Java如何提高大量數(shù)據(jù)的處理性能

    在Java中提高大量數(shù)據(jù)的處理性能,可以從多個角度進行優(yōu)化,包括選擇合適的數(shù)據(jù)結(jié)構(gòu),使用多線程和并發(fā)處理等,下面我們來看看Java提高大量數(shù)據(jù)的處理性能的實用技巧吧
    2025-01-01
  • java SpringMVC學習使用詳解

    java SpringMVC學習使用詳解

    本篇文章主要介紹了java SpringMVC——如何獲取請求參數(shù)詳解,詳細的介紹了每種參數(shù)注解的用法及其實例。感興趣的小伙伴們可以參考一下
    2017-04-04
  • Java中List與數(shù)組之間的相互轉(zhuǎn)換

    Java中List與數(shù)組之間的相互轉(zhuǎn)換

    在日常Java學習或項目開發(fā)中,經(jīng)常會遇到需要int[]數(shù)組和List列表相互轉(zhuǎn)換的場景,然而往往一時難以想到有哪些方法,最后可能會使用暴力逐個轉(zhuǎn)換法,往往不是我們所滿意的,下面這篇文章主要給大家介紹了關(guān)于Java中List與數(shù)組之間的相互轉(zhuǎn)換,需要的朋友可以參考下
    2023-05-05
  • Spring自定義注解的實現(xiàn)與使用方式

    Spring自定義注解的實現(xiàn)與使用方式

    注解是Java中用于類、方法、參數(shù)、包的裝飾標志,本身不具備功能,但可定義參數(shù),Java包含內(nèi)建注解和元注解,如@Target、@Retention等,描述注解的使用范圍和生命周期,Spring的AOP(面向切面編程)可以結(jié)合注解實現(xiàn)功能,如權(quán)限控制和日志記錄
    2024-09-09

最新評論

杂多县| 彭阳县| 黄浦区| 九台市| 岫岩| 桦甸市| 方城县| 浪卡子县| 防城港市| 休宁县| 周口市| 嘉祥县| 天长市| 娱乐| 万宁市| 阳信县| 建宁县| 晋宁县| 莱芜市| 大安市| 通渭县| 南岸区| 兴安县| 怀来县| 云安县| 阿尔山市| 广安市| 静乐县| 嘉黎县| 新蔡县| 天门市| 留坝县| 揭西县| 加查县| 新疆| 南平市| 嫩江县| 襄垣县| 巴彦淖尔市| 旌德县| 延安市|