提问者:小点点

使用ApachePOIdocxMSWord文档中的间距和边距设置


我有两个段落,我希望每行前有100 pt的空间。有没有办法我们可以在ApachePOI中做到?

这是代码片段

XWPFDocument doc = new XWPFDocument();
XWPFParagraph documentTitle = doc.createParagraph();

documentTitle.setAlignment(ParagraphAlignment.CENTER);
XWPFRun run = documentTitle.createRun();

run.setText("Paragraph 1");
run.setBold(true);
run.setFontFamily("Calibri");
run.setFontSize(13);
run.setColor("4F81BD");

run.addBreak();

run.setText("Paragraph 2");
run.setBold(true);
run.setFontFamily("Calibri");
run.setFontSize(13);
run.setColor("4F81BD");

这里如何在两段之间添加100 pt空格?我们有什么方法可以实现这一点吗?addBreak()在两行之间不保留任何空格。

以及如何在docx中设置边距行间距?

任何帮助将不胜感激。

谢谢。


共1个答案

匿名用户

得到了答案…

    documentTitle.setAlignment(ParagraphAlignment.CENTER);
    // This does the trick
    documentTitle.setSpacingBefore(100);

它在文本的每一行之间给我留了100pt的空间

如果您想将自定义边距添加到您的文档中。使用此代码。

    CTSectPr sectPr = document.getDocument().getBody().addNewSectPr();
    CTPageMar pageMar = sectPr.addNewPgMar();
    pageMar.setLeft(BigInteger.valueOf(720L));
    pageMar.setTop(BigInteger.valueOf(1440L));
    pageMar.setRight(BigInteger.valueOf(720L));
    pageMar.setBottom(BigInteger.valueOf(1440L));