qlabel 边加载边更新_Java 设置Word页边距、页面大小、页面方向、页面边框

本文将通过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仓库下载并导入。

077a276a24cfd54cc2e9b5cb5b7f9fdc.png

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

页面设置结果:

5bfc2932d87265002032b94c9964c653.png

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

页面边框效果:

460cd30d5f101da0e34155e38d0b4900.png

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

页面边框效果:

07595e93954caaa85989bb09ab6e1f88.png

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

段落边框效果:

890331a1d2e0ec8870ea240d614b854e.png

(本文完)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Qt中,可以使用QLayout类来实现窗口页面内部随页面大小改变的子窗口布局。QLayout是Qt中用于管理QWidget(即窗口部件)子控件的基类,它可以自动帮助你排列子控件,并且随着窗口大小的改变而自动调整子控件的大小和位置。 以下是一个简单的示例代码,演示如何在Qt中使用QLayout实现子窗口布局: ```cpp #include <QApplication> #include <QMainWindow> #include <QLabel> #include <QPushButton> #include <QVBoxLayout> int main(int argc, char *argv[]) { QApplication app(argc, argv); // 创建主窗口 QMainWindow mainWindow; mainWindow.setWindowTitle("My Application"); // 创建子控件 QLabel *label = new QLabel("Hello World!"); QPushButton *button = new QPushButton("Click me!"); // 创建布局管理器 QVBoxLayout *layout = new QVBoxLayout(); layout->addWidget(label); layout->addWidget(button); // 设置布局管理器 QWidget *centralWidget = new QWidget(); centralWidget->setLayout(layout); mainWindow.setCentralWidget(centralWidget); // 显示主窗口 mainWindow.show(); return app.exec(); } ``` 在上面的示例代码中,我们创建了一个主窗口QMainWindow,然后在主窗口中创建了一个QLabel和一个QPushButton。接着,我们创建了一个QVBoxLayout布局管理器,并将QLabel和QPushButton添加到布局中。最后,我们将这个布局管理器设置为主窗口的中央控件,并显示主窗口。 这样,当你调整窗口大小时,QLabel和QPushButton将会随之自动调整大小和位置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值