POI 3.10을 사용하여 Word 문서 (XWPF)를 만들었습니다. 대부분의 작업은 간단하지만 페이지 번호를 추가하는 방법을 알지 못합니다. 바닥 글을 추가했지만 바닥 글의 텍스트가 모든 페이지에서 동일합니다.Apache POI 페이지 번호 추가 방법
답변
오른쪽에있는 바닥 글에 LibreOffice를 만들고 XML 파일을 조사했습니다 (MS Word-Std-Objects는 지원되지 않음). POI에서는 페이지 번호로 사용됩니다).
이 더 복잡 꼬리말을 만들 수있게된다 ..
대신 STJc.RIGHT의 ctjc에 대한 다른 값을 설정하는 다른 포지션 수를 설정 ...
결과는 다음과 같다 :
// create footer
XWPFHeaderFooterPolicy policy = doc.getHeaderFooterPolicy();
CTP ctpFooter = CTP.Factory.newInstance();
XWPFParagraph[] parsFooter;
// add style (s.th.)
CTPPr ctppr = ctpFooter.addNewPPr();
CTString pst = ctppr.addNewPStyle();
pst.setVal("style21");
CTJc ctjc = ctppr.addNewJc();
ctjc.setVal(STJc.RIGHT);
ctppr.addNewRPr();
// Add in word "Page "
CTR ctr = ctpFooter.addNewR();
CTText t = ctr.addNewT();
t.setStringValue("Page ");
t.setSpace(Space.PRESERVE);
// add everything from the footerXXX.xml you need
ctr = ctpFooter.addNewR();
ctr.addNewRPr();
CTFldChar fch = ctr.addNewFldChar();
fch.setFldCharType(STFldCharType.BEGIN);
ctr = ctpFooter.addNewR();
ctr.addNewInstrText().setStringValue(" PAGE ");
ctpFooter.addNewR().addNewFldChar().setFldCharType(STFldCharType.SEPARATE);
ctpFooter.addNewR().addNewT().setStringValue("1");
ctpFooter.addNewR().addNewFldChar().setFldCharType(STFldCharType.END);
XWPFParagraph footerParagraph = new XWPFParagraph(ctpFooter, doc);
parsFooter = new XWPFParagraph[1];
parsFooter[0] = footerParagraph;
policy.createFooter(XWPFHeaderFooterPolicy.DEFAULT, parsFooter);
나는 이것을 사용하고 표시 할 페이지 번호가있어! 하지만 나는 PAGE라는 단어를 표시 할 수 없다. 너 hep? @Sempfer –
편집 된 답변에서 'PAGE' 단어를 추가하십시오. – jmarkmurphy
방금 저를 구해 줬습니다! ... JDK 6에서 작동 중입니다. po5 3.15 –
CTP ctp = CTP.Factory.newInstance();
//this add page number incremental
ctp.addNewR().addNewPgNum();
XWPFParagraph codePara = new XWPFParagraph(ctp, document);
XWPFParagraph[] paragraphs = new XWPFParagraph[1];
paragraphs[0] = codePara;
//position of number
codePara.setAlignment(ParagraphAlignment.CENTER);
CTSectPr sectPr = document.getDocument().getBody().addNewSectPr();
try {
XWPFHeaderFooterPolicy headerFooterPolicy = new XWPFHeaderFooterPolicy(document, sectPr);
headerFooterPolicy.createFooter(STHdrFtr.DEFAULT, paragraphs);
} catch (IOException | XmlException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
headerFooterPolicy.createFooter (STHdrFtr.DEFAULT, 단락); 이 행은 다음과 같습니다. headerFooterPolicy.createHeader (STHdrFtr.DEFAULT, paragraphs); –
사양에서 :주의 : pgNum 블록은 오래된 워드 프로세서와의 호환성을 위해 사용되는 레거시 구조이며, 문서를 읽는 동안 소비되지 않는 한 생성해서는 안됩니다. ' – jmarkmurphy
- 1. Apache POI 행 번호
- 2. Apache POI 3.7 행 번호 재 지정
- 3. IKVM Apache POI 방법
- 4. Apache POI 데이터 형식
- 5. Apache POI. 시트 복사
- 6. Apache POI HSSF. 총 페이지 수 얻기
- 7. Apache POI XWPF 헤더에 모양 추가
- 8. Apache POI XSLF 슬라이드에 동영상 추가
- 9. Apache OFBiz에서 Apache POI 예외
- 10. Apache Poi - Algo
- 11. 페이지 번호 추가 itextsharp
- 12. 바코드에 페이지 번호 추가
- 13. Apache POI 3.9에서 DataValidation을 얻는 방법?
- 14. Apache POI 컴파일 오류
- 15. Apache POI 및 Aspose?
- 16. 자바 이클립스 apache poi
- 17. Apache POI org.apache.poi.ss.formula.FormulaParseException
- 18. Apache POI Word 자습서.
- 19. Apache poi 날짜 형식
- 20. Apache POI 시간 셀
- 21. Apache-POI 필드 형성
- 22. Java Apache poi
- 23. Apache POI 종속성은 무엇입니까?
- 24. Apache POI Comment Excel
- 25. Android에서 Apache POI 사용
- 26. Apache POI Shift Row
- 27. Apache POI 및 EXCEL
- 28. android apache poi error
- 29. Apache POI - XSSF : Row.getCell()
- 30. excel java apache poi
현재 바닥 글에 페이지 번호를 어떻게 추가하고 있습니까? 시도한 코드를 보여줄 수 있습니까? – Gagravarr
나도 필요합니다 - 바닥 글에 페이지 번호를 추가하는 중 ...이 중 하나가 제안 할 수 ... –