docx4j设置pbr属性值
时间: 2023-05-30 07:01:22 浏览: 65
docx4j可以通过以下代码设置段落属性值(包括pbr属性值):
```java
import org.docx4j.jaxb.Context;
import org.docx4j.wml.*;
// 创建一个段落
P paragraph = factory.createP();
// 创建一个段落属性
PPr paragraphProperties = factory.createPPr();
// 创建一个段落边框
PBdr paragraphBorder = factory.createPPrBasePBdr();
// 创建一个左边框
CTBorder leftBorder = factory.createCTBorder();
leftBorder.setVal(STBorder.SINGLE);
leftBorder.setSz(BigInteger.valueOf(4));
leftBorder.setColor("auto");
// 设置边框到段落边框
paragraphBorder.setLeft(leftBorder);
// 设置段落边框到段落属性
paragraphProperties.setPBdr(paragraphBorder);
// 创建一个段落间距
PPrBase.Spacing spacing = factory.createPPrBaseSpacing();
spacing.setBefore(BigInteger.valueOf(120));
spacing.setAfter(BigInteger.valueOf(120));
// 设置段落间距到段落属性
paragraphProperties.setSpacing(spacing);
// 创建一个段落标识符
PPrBase.PStyle style = factory.createPPrBasePStyle();
style.setVal("Heading1");
// 设置段落标识符到段落属性
paragraphProperties.setPStyle(style);
// 创建一个段落缩进
PPrBase.Ind ind = factory.createPPrBaseInd();
ind.setLeft(BigInteger.valueOf(720));
ind.setRight(BigInteger.valueOf(720));
// 设置段落缩进到段落属性
paragraphProperties.setInd(ind);
// 创建一个段落对齐方式
Jc justification = factory.createJc();
justification.setVal(JcEnumeration.CENTER);
// 设置段落对齐方式到段落属性
paragraphProperties.setJc(justification);
// 创建一个段落行高
PPrBase.Spacing lineSpacing = factory.createPPrBaseSpacing();
lineSpacing.setLine(BigInteger.valueOf(240));
lineSpacing.setLineRule(STLineSpacingRule.AUTO);
// 设置段落行高到段落属性
paragraphProperties.setSpacing(lineSpacing);
// 创建一个pbr属性
PPrBase.PBdr pbr = Context.getWmlObjectFactory().createPPrBasePBdr();
// 设置pbr属性值
pbr.setTop(Context.getWmlObjectFactory().createCTBorder());
pbr.getTop().setVal(STBorder.SINGLE);
pbr.getTop().setColor("auto");
pbr.getTop().setSz(new BigInteger("4"));
// 把pbr属性设置到段落属性
paragraphProperties.setPBdr(pbr);
// 把段落属性设置到段落
paragraph.setPPr(paragraphProperties);
```
以上代码演示了如何设置段落属性,其中包括了设置pbr属性值的步骤。具体来说,我们需要通过`Context.getWmlObjectFactory().createPPrBasePBdr()`方法创建一个pbr属性对象,然后调用其`setTop()`方法设置上边框的属性值。最后,把pbr属性设置到段落属性中即可。