2015-04-22 1 views
5

Я хочу установить поля страницы для текстового документа, созданные с помощью apache poi-3.9. Я нашел, что это можно сделать, используя CTPageMar , но CTPageMar не разрешается. Я использую апачский пои-3,9Как установить поля страницы для текстового документа с помощью apache poi?

Я попробовал этот

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)); 
+0

Просмотреть эту тему - http://apache-poi.1045710.n5.nabble.com/How-to-change-margins-of-a-word-document-td5710067.html – LittlePanda

+0

спасибо @LittlePanda код по марке помог, но он работает для формата doc не для docx. как я могу установить поля при создании документа xwpf. (код из ссылки описывает настройки полей для существующего документа) – imdzeeshan

+0

Возможно, вы используете XWPFDocument вместо HWPF? – LittlePanda

ответ

3

Насколько я понимаю, проблема не связана с предоставленной кодой, это связанно с отсутствующими CTPageMar класса.

Источник отсутствующих классов проблема четко изложена в Apache POI FAQ:

Чтобы использовать новые форматы файлов OOXML, POI необходим банку, содержащую XSDs формате файл [...] Вы можете скачать баночку вручную из репозитория POI Maven.

URL из часто задаваемых вопросов не работает, но вы можете найти требуемую банку в central maven repo.

+0

Важно отметить, что файл ooxml-schemas, содержащий все, не совпадает с файлом poi-ooxml-schemas. Из часто задаваемых вопросов: «Полная банка всех схем - это ooxml-schemas-1.3.jar, и в настоящее время она составляет около 15 мб. Меньшая баночка poi-ooxml-schema составляет всего около 4 мб. Этот последний файл jar содержит только обычно используемые детали ». – jamsandwich

1

Для решения проблемы класса CTPageMar вам необходимо будет добавить пакет org.apache.poi:ooxml-schema в ваш путь к классу. Соответствующий JAR содержит все схемы. Вы можете найти дополнительную информацию here.

 Смежные вопросы

  • Нет связанных вопросов^_^