PDFBox невероятно прост в использовании по сравнению с iText. Кроме того, когда я пытаюсь собрать iText из исходного кода, он не работает прямо во время выполнения - я получаю кучу загадочных ошибок о пропущенных ресурсах.

у прочитать некоторые текстовые данные из PDF-файла, используя Java. Пожалуйста, помогите мне сделать это.

Любая помощь приветствуется.

Ответы на вопрос(4)

 Jesse Barnum24 нояб. 2017 г., 04:50
PDFBox невероятно прост в использовании по сравнению с iText. Кроме того, когда я пытаюсь собрать iText из исходного кода, он не работает прямо во время выполнения - я получаю кучу загадочных ошибок о пропущенных ресурсах.
 Bolo24 янв. 2011 г., 18:23
Мне нравится iText, но он не позволяет извлекать текст из коробки: он предоставляет только инструменты низкого уровня, чтобы вы могли сделать это самостоятельно. В «iText in Action» есть хороший раздел о (не зависящих от библиотеки) проблемах с извлечением текста.

PDFBox содержитинструменты для извлечения текста.

IText имеет более низкоуровневую поддержку для манипулирования текстом, но вам придется написать значительное количество кода для извлечения текста.

iText в действии содержит хороший обзор ограничений извлечения текста из PDF, независимо от используемой библиотеки (Раздел 18.2: Извлечение и редактирование текста), и убедительное объяснение, почему библиотека не имеет поддержки извлечения текста. Короче говоря, относительно легко написать код, который будет обрабатывать простые случаи, но в целом невозможно извлечь текст из PDF в целом.

Решение Вопроса

PDFBox Это лучшая библиотека, которую я нашел для этой цели, она всеобъемлющая и действительно довольно проста в использовании, если вы просто занимаетесь базовым извлечением текста. Примеры можно найтиВот.

Это объясняется на странице, но следует обратить внимание на то, что начальный и конечный индексы при использовании setStartPage () и setEndPage ()обе включительно. Я пропустил это объяснение в первый раз, а потом мне потребовалось некоторое время, чтобы понять, почему я получаю более одной страницы назад с каждым звонком!

IText это еще одна альтернатива, которая также работает с C #, хотя я лично никогда не использовал ее. Это более низкий уровень, чем PDFBox, поэтому он менее подходит для работы, если все, что вам нужно, это базовое извлечение текста.

PDDocument document = PDDocument.load(new File("test.pdf"));
if (!document.isEncrypted()) {
    PDFTextStripper stripper = new PDFTextStripper();
    String text = stripper.getText(document);
    System.out.println("Text:" + text);
}
document.close();
 Srivastav Reddy20 нояб. 2015 г., 13:57
импортировать эти:import java.io.File; import java.io.IOException; import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.text.PDFTextStripper; import org.apache.pdfbox.text.PDFTextStripperByArea;

Ваш ответ на вопрос