欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java 设置Word页边距、页面大小、页面方向、页面边框

程序员文章站 2024-04-02 22:44:46
本文将通过Java示例介绍如何设置Word页边距(包括上、下、左、右)、页面大小(可设置Letter/A3/A4/A5/A6/B4/B5/B6/Envelop DL/Half Letter/Letter 11x17等常见纸张大小)、页面方向(Landscape/Portrait)、页面边框(包括页面 ......

本文将通过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程序;或者通过并导入。

Java 设置Word页边距、页面大小、页面方向、页面边框

 

 

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

页面设置结果:

Java 设置Word页边距、页面大小、页面方向、页面边框

 

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

 页面边框效果:

Java 设置Word页边距、页面大小、页面方向、页面边框

 

   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);
    }
}

 

页面边框效果:

Java 设置Word页边距、页面大小、页面方向、页面边框

 

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

  段落边框效果:

Java 设置Word页边距、页面大小、页面方向、页面边框

 

(本文完)