Библиотека Apache PDFBox — это Java-инструмент с открытым исходным кодом для работы с PDF-документами. Этот проект позволяет создавать новые PDF-документы, манипулировать существующими документами и извлекать содержимое из документов. PDFBox также включает в себя несколько утилит командной строки. PDFBox публикуется под лицензией Apache версии 2.0.
PDFBox — это проект Apache Software Foundation.
Вы можете загрузить двоичные версии для выпусков, находящихся в стадии разработки, или более старых выпусков с нашей страницы загрузки.
Для сборки PDFBox вам потребуется Java 11 (или более поздняя версия) и Maven 3. Рекомендуемая команда сборки:
mvn clean install
Сборка по умолчанию скомпилирует исходные коды Java и упакует двоичные классы в пакеты jar. См. документацию Maven для всех других доступных вариантов сборки.
Существуют различные способы помочь нам улучшить PDFBox.
Пожалуйста, следуйте инструкциям на нашей странице поддержки.
Если у вас есть вопросы о том, как использовать PDFBox, задайте их в списке рассылки для пользователей. Это поможет вам со стороны всего сообщества.
Примеры PDFBox и тестовый код в исходниках также предоставят дополнительную информацию.
Дополнительные ресурсы доступны на таких сайтах, как Stack Overflow.
Если вы уверены, что нашли ошибку, сообщите о ней в нашем трекере проблем.
Полный список известных проблем и запрошенных функций см. в разделе «Отслеживание проблем». Некоторые из наиболее распространенных проблем:
Вы получаете текст типа «G38G43G36G51G5» вместо того, что ожидаете при извлечении текста. Это связано с тем, что символы представляют собой бессмысленную внутреннюю кодировку, указывающую на глифы, встроенные в документ PDF. Единственный способ получить доступ к тексту — использовать OCR. Это может быть будущим улучшением.
Вы получаете сообщение об ошибке, например java.io.IOException: Can't handle font width
Это МОЖЕТ быть связано с тем, что у вас нет каталога org/apache/pdfbox/resources в вашем пути к классам. Самое простое решение — включить apache-pdfbox-xxxjar в ваш путь к классам.
Вы получаете текст с правильными символами, но в неправильном порядке. Возможно, это связано с тем, что вы не включили сортировку. Текст в PDF-файлах хранится фрагментами, и фрагменты необязательно хранить в том порядке, в котором они отображаются на странице. По умолчанию PDFBox не сортирует текст.
Коллективная работа: Copyright 2015 Apache Software Foundation.
Лицензия предоставлена Apache Software Foundation (ASF) в соответствии с одним или несколькими лицензионными соглашениями для участников. Дополнительную информацию относительно владения авторскими правами см. в файле NOTICE, распространяемом вместе с этой работой. ASF предоставляет вам этот файл по лицензии Apache версии 2.0 («Лицензия»); вы не можете использовать этот файл, кроме как в соответствии с Лицензией. Вы можете получить копию Лицензии по адресу:
https://www.apache.org/licenses/LICENSE-2.0
Если это не требуется действующим законодательством или не согласовано в письменной форме, программное обеспечение, распространяемое по Лицензии, распространяется на условиях «КАК ЕСТЬ», БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ ИЛИ УСЛОВИЙ, явных или подразумеваемых. См. Лицензию для определения конкретного языка, регулирующего разрешения и ограничения в рамках Лицензии.
Этот дистрибутив включает криптографическое программное обеспечение. Страна, в которой вы в настоящее время проживаете, может иметь ограничения на импорт, владение, использование и/или реэкспорт в другую страну программного обеспечения для шифрования. ПЕРЕД использованием любого программного обеспечения для шифрования, пожалуйста, ознакомьтесь с законами, правилами и политиками вашей страны, касающимися импорта, владения или использования и реэкспорта программного обеспечения для шифрования, чтобы узнать, разрешено ли это. См. https://www.wassenaar.org/ для получения дополнительной информации.
Министерство торговли США, Бюро промышленности и безопасности (BIS), классифицировало это программное обеспечение как контрольный номер экспортного товара (ECCN) 5D002.C.1, что включает в себя программное обеспечение информационной безопасности, использующее или выполняющее криптографические функции с асимметричными алгоритмами. Форма и способ распространения этого дистрибутива Apache Software Foundation позволяют экспортировать его в соответствии с исключением License Exception ENC Technology Software Unrestricted (TSU) (см. Правила администрирования экспорта BIS, раздел 740.13) как для объектного, так и для исходного кода.
Ниже представлена более подробная информация о включенном в комплект криптографическом программном обеспечении:
Apache PDFBox использует архитектуру шифрования Java (JCA) и библиотеки Bouncy Castle для шифрования PDF-документов.