Search in sources :

Example 1 with CTPPr

use of org.openxmlformats.schemas.wordprocessingml.x2006.main.CTPPr in project poi by apache.

the class XWPFHeaderFooterPolicy method buildHdrFtr.

/**
     * MB 24 May 2010. Created this overloaded buildHdrFtr() method because testing demonstrated
     * that the XWPFFooter or XWPFHeader object returned by calls to the createHeader(int, XWPFParagraph[])
     * and createFooter(int, XWPFParagraph[]) methods or the getXXXXXHeader/Footer methods where
     * headers or footers had been added to a document since it had been created/opened, returned
     * an object that contained no XWPFParagraph objects even if the header/footer itself did contain
     * text. The reason was that this line of code; CTHdrFtr ftr = CTHdrFtr.Factory.newInstance();
     * created a brand new instance of the CTHDRFtr class which was then populated with data when
     * it should have recovered the CTHdrFtr object encapsulated within the XWPFHeaderFooter object
     * that had previoulsy been instantiated in the createHeader(int, XWPFParagraph[]) or
     * createFooter(int, XWPFParagraph[]) methods.
     */
private CTHdrFtr buildHdrFtr(String pStyle, XWPFParagraph[] paragraphs, XWPFHeaderFooter wrapper) {
    CTHdrFtr ftr = wrapper._getHdrFtr();
    if (paragraphs != null) {
        for (int i = 0; i < paragraphs.length; i++) {
            CTP p = ftr.addNewP();
            ftr.setPArray(i, paragraphs[i].getCTP());
        }
    //        } else {
    //            CTP p = ftr.addNewP();
    //            CTBody body = doc.getDocument().getBody();
    //            if (body.sizeOfPArray() > 0) {
    //                CTP p0 = body.getPArray(0);
    //                if (p0.isSetRsidR()) {
    //                    byte[] rsidr = p0.getRsidR();
    //                    byte[] rsidrdefault = p0.getRsidRDefault();
    //                    p.setRsidP(rsidr);
    //                    p.setRsidRDefault(rsidrdefault);
    //                }
    //            }
    //            CTPPr pPr = p.addNewPPr();
    //            pPr.addNewPStyle().setVal(pStyle);
    }
    return ftr;
}
Also used : CTHdrFtr(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTHdrFtr) CTP(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTP)

Example 2 with CTPPr

use of org.openxmlformats.schemas.wordprocessingml.x2006.main.CTPPr in project poi by apache.

the class TestXWPFParagraph method testSetGetSpacing.

@Test
public void testSetGetSpacing() throws IOException {
    XWPFDocument doc = new XWPFDocument();
    XWPFParagraph p = doc.createParagraph();
    CTP ctp = p.getCTP();
    CTPPr ppr = ctp.getPPr() == null ? ctp.addNewPPr() : ctp.getPPr();
    assertEquals(-1, p.getSpacingBefore());
    assertEquals(-1, p.getSpacingAfter());
    assertEquals(-1, p.getSpacingBetween(), 0.1);
    assertEquals(LineSpacingRule.AUTO, p.getSpacingLineRule());
    CTSpacing spacing = ppr.addNewSpacing();
    spacing.setAfter(new BigInteger("10"));
    assertEquals(10, p.getSpacingAfter());
    spacing.setBefore(new BigInteger("10"));
    assertEquals(10, p.getSpacingBefore());
    p.setSpacingAfter(100);
    assertEquals(100, spacing.getAfter().intValue());
    p.setSpacingBefore(100);
    assertEquals(100, spacing.getBefore().intValue());
    p.setSpacingBetween(.25, LineSpacingRule.EXACT);
    assertEquals(.25, p.getSpacingBetween(), 0.01);
    assertEquals(LineSpacingRule.EXACT, p.getSpacingLineRule());
    p.setSpacingBetween(1.25, LineSpacingRule.AUTO);
    assertEquals(1.25, p.getSpacingBetween(), 0.01);
    assertEquals(LineSpacingRule.AUTO, p.getSpacingLineRule());
    p.setSpacingBetween(.5, LineSpacingRule.AT_LEAST);
    assertEquals(.5, p.getSpacingBetween(), 0.01);
    assertEquals(LineSpacingRule.AT_LEAST, p.getSpacingLineRule());
    p.setSpacingBetween(1.15);
    assertEquals(1.15, p.getSpacingBetween(), 0.01);
    assertEquals(LineSpacingRule.AUTO, p.getSpacingLineRule());
    doc.close();
}
Also used : CTPPr(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTPPr) CTSpacing(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTSpacing) BigInteger(java.math.BigInteger) CTP(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTP) Test(org.junit.Test)

Example 3 with CTPPr

use of org.openxmlformats.schemas.wordprocessingml.x2006.main.CTPPr in project poi by apache.

the class TestXWPFParagraph method testSetGetPageBreak.

@Test
public void testSetGetPageBreak() throws IOException {
    XWPFDocument doc = new XWPFDocument();
    XWPFParagraph p = doc.createParagraph();
    CTP ctp = p.getCTP();
    CTPPr ppr = ctp.getPPr() == null ? ctp.addNewPPr() : ctp.getPPr();
    CTOnOff pageBreak = ppr.addNewPageBreakBefore();
    pageBreak.setVal(STOnOff.FALSE);
    assertEquals(false, p.isPageBreak());
    p.setPageBreak(true);
    assertEquals(STOnOff.TRUE, ppr.getPageBreakBefore().getVal());
    doc.close();
}
Also used : CTPPr(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTPPr) CTOnOff(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTOnOff) CTP(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTP) Test(org.junit.Test)

Example 4 with CTPPr

use of org.openxmlformats.schemas.wordprocessingml.x2006.main.CTPPr in project poi by apache.

the class TestXWPFParagraph method testSetGetIndentation.

@Test
public void testSetGetIndentation() throws IOException {
    XWPFDocument doc = new XWPFDocument();
    XWPFParagraph p = doc.createParagraph();
    assertEquals(-1, p.getIndentationLeft());
    CTP ctp = p.getCTP();
    CTPPr ppr = ctp.getPPr() == null ? ctp.addNewPPr() : ctp.getPPr();
    assertEquals(-1, p.getIndentationLeft());
    CTInd ind = ppr.addNewInd();
    ind.setLeft(new BigInteger("10"));
    assertEquals(10, p.getIndentationLeft());
    p.setIndentationLeft(100);
    assertEquals(100, ind.getLeft().intValue());
    doc.close();
}
Also used : CTPPr(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTPPr) CTInd(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTInd) BigInteger(java.math.BigInteger) CTP(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTP) Test(org.junit.Test)

Example 5 with CTPPr

use of org.openxmlformats.schemas.wordprocessingml.x2006.main.CTPPr in project poi by apache.

the class TOC method addRow.

public void addRow(int level, String title, int page, String bookmarkRef) {
    CTSdtContentBlock contentBlock = this.block.getSdtContent();
    CTP p = contentBlock.addNewP();
    p.setRsidR("00EF7E24".getBytes(LocaleUtil.CHARSET_1252));
    p.setRsidRDefault("00EF7E24".getBytes(LocaleUtil.CHARSET_1252));
    CTPPr pPr = p.addNewPPr();
    pPr.addNewPStyle().setVal("TOC" + level);
    CTTabs tabs = pPr.addNewTabs();
    CTTabStop tab = tabs.addNewTab();
    tab.setVal(STTabJc.RIGHT);
    tab.setLeader(STTabTlc.DOT);
    tab.setPos(new BigInteger("8290"));
    pPr.addNewRPr().addNewNoProof();
    CTR run = p.addNewR();
    run.addNewRPr().addNewNoProof();
    run.addNewT().setStringValue(title);
    run = p.addNewR();
    run.addNewRPr().addNewNoProof();
    run.addNewTab();
    run = p.addNewR();
    run.addNewRPr().addNewNoProof();
    run.addNewFldChar().setFldCharType(STFldCharType.BEGIN);
    // pageref run
    run = p.addNewR();
    run.addNewRPr().addNewNoProof();
    CTText text = run.addNewInstrText();
    text.setSpace(Space.PRESERVE);
    // bookmark reference
    text.setStringValue(" PAGEREF _Toc" + bookmarkRef + " \\h ");
    p.addNewR().addNewRPr().addNewNoProof();
    run = p.addNewR();
    run.addNewRPr().addNewNoProof();
    run.addNewFldChar().setFldCharType(STFldCharType.SEPARATE);
    // page number run
    run = p.addNewR();
    run.addNewRPr().addNewNoProof();
    run.addNewT().setStringValue(Integer.toString(page));
    run = p.addNewR();
    run.addNewRPr().addNewNoProof();
    run.addNewFldChar().setFldCharType(STFldCharType.END);
}
Also used : CTR(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTR) CTText(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTText) CTTabs(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTabs) CTPPr(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTPPr) BigInteger(java.math.BigInteger) CTSdtContentBlock(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTSdtContentBlock) CTP(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTP) CTTabStop(org.openxmlformats.schemas.wordprocessingml.x2006.main.CTTabStop)

Aggregations

CTP (org.openxmlformats.schemas.wordprocessingml.x2006.main.CTP)11 CTPPr (org.openxmlformats.schemas.wordprocessingml.x2006.main.CTPPr)10 Test (org.junit.Test)8 BigInteger (java.math.BigInteger)3 CTOnOff (org.openxmlformats.schemas.wordprocessingml.x2006.main.CTOnOff)2 CTR (org.openxmlformats.schemas.wordprocessingml.x2006.main.CTR)2 CTSpacing (org.openxmlformats.schemas.wordprocessingml.x2006.main.CTSpacing)2 CTLock (com.microsoft.schemas.office.office.CTLock)1 CTFormulas (com.microsoft.schemas.vml.CTFormulas)1 CTGroup (com.microsoft.schemas.vml.CTGroup)1 CTH (com.microsoft.schemas.vml.CTH)1 CTHandles (com.microsoft.schemas.vml.CTHandles)1 CTPath (com.microsoft.schemas.vml.CTPath)1 CTShape (com.microsoft.schemas.vml.CTShape)1 CTShapetype (com.microsoft.schemas.vml.CTShapetype)1 CTTextPath (com.microsoft.schemas.vml.CTTextPath)1 XWPFParagraph (org.apache.poi.xwpf.usermodel.XWPFParagraph)1 CTBorder (org.openxmlformats.schemas.wordprocessingml.x2006.main.CTBorder)1 CTHdrFtr (org.openxmlformats.schemas.wordprocessingml.x2006.main.CTHdrFtr)1 CTInd (org.openxmlformats.schemas.wordprocessingml.x2006.main.CTInd)1