2012-02-24 2 views

답변

1

처음에는 XWPFDocument에서 getHeaderFooterPolicy()을 호출하면 HeaderFooterPolicy이 반환됩니다. 그런 다음 페이지의 해당 헤더 (예 : 기본값, 첫 번째 페이지 등)를 확인할 수 있습니다.

변경하고자하는 적절한 XWPFHeader을 얻은 후에는 다른 문서 파트로 편집 할 수 있습니다. 테이블, 문단 등을 가져 와서 제거하고 새 문서를 추가하거나 텍스트를 바꿀 수 있습니다. 주 문서를 편집하는 것과 같은 과정입니다.

+1

POI의 언급 된 클래스를 사용하여 헤더를 편집 할 수있는 몇 가지 코드 예제를 제공 할 수 있습니까? –

+0

단위 테스트를 살펴보면 해당 기능이 올바르게 작동하는지 테스팅의 일부로 많은 예제가 제공됩니다. – Gagravarr

+0

또한 헤더는 다른 문서 파트와 마찬가지로 작동하므로 충분한 XWPF를 배웠 으면 단락과 표를 추가/변경하는 것은 헤더의 경우와 정확히 같습니다. – Gagravarr

2

체크 아웃 Writing Microsoft Word Documents in Java With Apache POI 내가 전에 Word 파일로 일한 적이 있지만, 그들은 (그들은 엑셀의 행, 열, 시트 등을 모델링) 그래서 따라하기 아주 쉬운 POI 라이브러리 엑셀 물건에 그렇게 결코

Word 파일에 대해 똑같이 쉽게 수행 할 수 있다고 가정합니다.

그리고는 가이드에 빠른 읽기를 할 Apache POI - HWPF - Java API to Handle Microsoft Word Files

+0

내 프로젝트를 시작했을 때 나는 똑같은 것으로 가정하고 있었고, 스프레드 시트로 많은 성공을 거두었 다. 단어도? 정말 끔찍한 경험이었습니다. 평범한 단어를 쓰지 않는 한 추천하지 않았습니다. 매년 Word 문서를 업데이트해야 할 때마다 머리글이 매 시간마다 우승합니다. –

3

문서가 .docx 형식으로되어 있기 때문에, 당신은 POI 프로젝트의 XWPF 구성 요소 API를 사용해야합니다. org.apache.poi.xwpf.usermodel.XWPFHeader 클래스가 유용 할 수도 있지만 (Javadoc), 직접 사용한 적이 없습니다.

나는 XWPF으로이 일에 대한 좋은 참조를 찾을 수 없습니다,하지만 다음은 HWPF, 나이가 Word 문서의와 똑같이 인터페이스에 접근 헤더 (AKA .doc 문서를) 설명 :

하기에 얻으려면 Word 문서의 머리글과 바닥 글은 org.apache.poi.hwpf.HWPFDocument입니다. 다음으로 org.apache.poi.hwpf.usermodel.HeaderStores을 만들고 HWPFDocument을 전달해야합니다. 마지막으로, HeaderStores은 문서에 정의 된 경우 첫 번째/짝수/홀수 페이지를 포함하여 머리글과 바닥 글에 대한 액세스 권한을 제공합니다. 또한 HeaderStores은 텍스트의 매크로를 제거하는 방법을 제공하므로 많은 머리글과 바닥 글이 매크로로 끝나면 유용합니다.

page those instructions are from은 HWPF에서 헤더 지원이 결코 좋지 않았 음을 의미합니다. XWPF. 더 나쁜 소식은 this other Apache page으로 XWPF 개발처럼 들리 겠지만 말이다. 당신이하고 싶은 일이 계획되었지만 아직 지원되지 않을 수도 있습니다.

+0

당신이 링크 한 페이지는 HWPF 개발에 대해서만 이야기하고 있습니다. 대부분의 사람들은 XWPF에 들어갈 것 같습니다. – Gagravarr

+0

XWPF 커밋에 대해 아는 것이 있으면 나는한다. 그러나이 페이지는 "[XWPF] 커미터 중 누구도 새로운 기능을 적극적으로 추가하고 있지 않습니다."라고 말합니다. @Gagravarr – Pops

관련 문제