Java 設定Word頁邊距、頁面大小、頁面方向、頁面邊框
阿新 • • 發佈:2020-01-17
本文將通過Java示例介紹如何設定Word頁邊距(包括上、下、左、右)、頁面大小(可設定Letter/A3/A4/A5/A6/B4/B5/B6/Envelop DL/Half Letter/Letter 11x17等常見紙張大小)、頁面方向(Landscape/Portrait)、頁面邊框(包括頁面邊框、段落邊框)。
使用工具:Free Spire.Doc for Java (免費版)
注:可通過官網下載jar包,解壓,並將lib資料夾下的jar檔案匯入java程式;或者通過maven倉庫下載並匯入。
Java 程式碼示例
【示例1】設定頁邊距、頁面大小、頁面方向
import com.spire.doc.*; import com.spire.doc.documents.PageOrientation; import com.spire.doc.documents.PageSize; public class PageMargins { public static void main(String[] args) { //載入文件 Document doc = new Document(); doc.loadFromFile("test.docx"); //獲取section Section section = doc.getSections().get(0); //設定頁邊距 section.getPageSetup().getMargins().setTop(30); section.getPageSetup().getMargins().setBottom(30); section.getPageSetup().getMargins().setLeft(50); section.getPageSetup().getMargins().setRight(50); //設定頁面方向為橫向 section.getPageSetup().setOrientation(PageOrientation.Landscape); //設定紙張大小 section.getPageSetup().setPageSize(PageSize.Letter); //儲存文件 doc.saveToFile("PageSetting.docx",FileFormat.Docx_2013); doc.dispose(); } }
頁面設定結果:
【示例2】頁面邊框
1. 設定整個頁面邊框
這裡對整個頁面設定邊框是,可分兩種情況,一種是邊框靠近頁面邊緣,另一種是邊框靠近正文內容。
1.1 邊框靠近頁面邊緣
import com.spire.doc.*; import com.spire.doc.documents.BorderStyle; import java.awt.*; public class PageBorder { public static void main(String[] args){ //載入測試文件 Document doc= new Document("test.docx"); //設定邊框樣式 Section sec = doc.getSections().get(0); sec.getPageSetup().getBorders().setBorderType(BorderStyle.Single); //設定邊框在頁面中的位置(靠近頁面邊緣) sec.getPageSetup().setPageBorderOffsetFrom(PageBorderOffsetFrom.Page_Edge); //設定邊框線條寬度、顏色、距離等 sec.getPageSetup().getBorders().setLineWidth(2f); sec.getPageSetup().getBorders().getLeft().setSpace(20f); sec.getPageSetup().getBorders().getLeft().setColor(Color.blue); sec.getPageSetup().getBorders().getRight().setSpace(20f); sec.getPageSetup().getBorders().getRight().setColor(Color.blue); sec.getPageSetup().getBorders().getTop().setSpace(10f); sec.getPageSetup().getBorders().getTop().setColor(Color.red); sec.getPageSetup().getBorders().getBottom().setSpace(10); sec.getPageSetup().getBorders().getBottom().setColor(Color.red); //儲存文件 doc.saveToFile("PageBorder.docx",FileFormat.Docx_2010); } }
頁面邊框效果:
1.2 邊框靠近正文內容
import com.spire.doc.*; import com.spire.doc.documents.BorderStyle; import java.awt.*; public class PageBorder { public static void main(String[] args){ //載入測試文件 Document doc= new Document("test.docx"); //設定邊框樣式 Section sec = doc.getSections().get(0); sec.getPageSetup().getBorders().setBorderType(BorderStyle.Single); //設定邊框在頁面中的位置(靠近正文位置) sec.getPageSetup().setPageBorderOffsetFrom(PageBorderOffsetFrom.Text);//邊框靠近正文內容 //設定邊框緊挨正文內容時,可設定邊框是否包含進頁首或頁尾 sec.getPageSetup().setPageBorderIncludeHeader(false); sec.getPageSetup().setPageBorderIncludeFooter(false); //設定邊框線條寬度、顏色、距離等 sec.getPageSetup().getBorders().setLineWidth(2f); sec.getPageSetup().getBorders().getLeft().setColor(Color.orange); sec.getPageSetup().getBorders().getRight().setColor(Color.orange); sec.getPageSetup().getBorders().getTop().setColor(Color.green); sec.getPageSetup().getBorders().getBottom().setColor(Color.green); //儲存文件 doc.saveToFile("PageBorder2.docx",FileFormat.Docx_2010); } }
頁面邊框效果:
2. 設定段落邊框
import com.spire.doc.*; import com.spire.doc.documents.BorderStyle; import com.spire.doc.documents.Paragraph; import java.awt.*; public class ParaBorder { public static void main(String[] args) { //載入文件 Document doc = new Document(); doc.loadFromFile("test.docx"); //獲取段落 Paragraph para = doc.getSections().get(0).getParagraphs().get(2); //設定段落邊框型別,邊框顏色、線條寬度 para.getFormat().getBorders().setBorderType(BorderStyle.Double); para.getFormat().getBorders().setColor(new Color(186,85,211)); para.getFormat().getBorders().setLineWidth(2); //儲存文件 doc.saveToFile("ParaBorder.docx",FileFormat.Docx_2013); doc.dispose(); } }
段落邊框效果:
(本文完)
&n