Java 實現 Word 文檔分欄效果


分欄是報刊、書籍、雜志常的排版樣式,它不僅能方便閱讀,同時也能增加頁面的美觀度。本文將介紹如何在Java應用程序中給Word文檔添加多個欄來實現分欄效果,以及如何設置每欄的寬度、間距和分割線。

 

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

 

Jar文件導入方法

方法一:

下載Free Spire.Doc for Java包並解壓縮然后從lib文件夾下,Spire.Doc.jar包導入到你的Java應用程序中。導入成功如下圖所示

 

 

 方法二:

通過Maven倉庫安裝導入詳細的操作步驟請參考鏈接:

https://www.e-iceblue.cn/licensing/install-spirepdf-for-java-from-maven-repository.html

 

Java代碼示例

 

import com.spire.doc.*;
import com.spire.doc.documents.*;

public class CreateMutiColumnWordDocument {
    public static void main(String[] args){
        //創建Word文檔
        Document document = new Document();
        //添加一個section
        Section section = document.addSection();

        //添加三欄到section,並設置每欄的寬度和間距
        section.addColumn(100, 30);
        section.addColumn(100, 30);
        section.addColumn(100, 30);

        //添加欄分割線
        section.getPageSetup().setColumnsLineBetween(true);

        String paraText1 = "月球,俗稱月亮,古時又稱太陰、玄兔,是地球唯一的天然衛星,並且是太陽系中第五大的衛星。"
                +"月球的直徑是地球的四分之一,質量是地球的八十分之一,相對於所環繞的行星,它是質量最大的衛星,也是太陽系內密度第二高的衛星,僅次於木衛一。"
                +"月球表面布滿了由隕石撞擊形成的環形山。月球現在與地球的距離,大約是地球直徑的30倍。";

        String paraText2 = "月球的自轉與公轉同步(潮汐鎖定),因此始終以同一面朝向着地球。"
                +"月球的引力影響造成地球海洋的潮汐和每一天的時間延長。"
                +"而月球與太陽的大小比率與距離的比率相近,使得它的視大小與太陽幾乎相同,在日食時月球可以完全遮蔽太陽而形成日全食。";

        String paraText3 = "月球是第一個人類曾經登陸過的地外星球。"
                +"前蘇聯的月球計划在1959年發射了第一艘登月的無人太空船;美國NASA的阿波羅計划是到目前為止,唯一實現的載人登月任務。"
                +"2019年1月3日,中國嫦娥四號成功登陸月球背面,全人類首次實現月球背面軟着陸。"
                +"1月15日,嫦娥四號完成人類首次月面生物實驗,月面長出第一株嫩芽。2月15日,月球再添5個“中國地名”。";

        //添加段落到section
        Paragraph paragraph = section.addParagraph();
        //添加文本到段落
        paragraph.appendText(paraText1);
        //添加分欄符 (分欄符后面的文字將從下一欄開始)
        paragraph.appendBreak(BreakType.Column_Break);

        //添加段落到section
        paragraph = section.addParagraph();
        //添加文本到段落
        paragraph.appendText(paraText2);
        //添加分欄符
        paragraph.appendBreak(BreakType.Column_Break);

        //添加段落到section
        paragraph = section.addParagraph();
        //添加文本到段落
        paragraph.appendText(paraText3);

        //創建段落樣式,並設置字體和字號
        ParagraphStyle paragraphStyle = new ParagraphStyle(document);
        paragraphStyle.setName("style");
        paragraphStyle.getCharacterFormat().setFontName("宋體");
        paragraphStyle.getCharacterFormat().setFontSize(12);
        document.getStyles().add(paragraphStyle);

        //給段落應用段落樣式
        for(int i = 0; i< section.getParagraphs().getCount(); i++){
            section.getParagraphs().get(i).applyStyle("style");
        }

        //保存結果文檔
        document.saveToFile("分欄效果.docx", FileFormat.Docx_2013);

    }
}

分欄效果圖:

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM