2016-03-01 2 views
0

Мне было интересно, можно ли получить текст в PDF по его разделу (заголовок, тело, нижний колонтитул и т. Д.). Я могу получить текст и их конкретные координаты, но я не хочу определять свои собственные x и y для разделов. Мне было интересно, был ли более динамичный способ приблизиться к этому. Возможно, цикл через XrefObjects. Любая помощь будет оценена. Заранее спасибо.Как определить раздел PDF в iTextSharp?

+0

Общий PDF не содержит явной информации о том, что является заголовком, нижним колонтитулом, телом, он знает только текст и графику, нарисованные в определенных координатах. Вы можете попытаться проанализировать неявную информацию, указанную, например, через шрифты, размер шрифта, выравнивание, пробелы и т. д. Но это сам проект. – mkl

ответ

2

Если ваши PDF файлы не были созданы очень последовательной источник и вам не придется иметь дело с «PDF-файлов в целом», ответ на ваш вопрос:

  • нет, вы можете» t сделать это простым способом
  • , но вы можете придумать динамический подход (возможно).

В PDF не имеется положений для составления своего контента, например, у вас есть в XML, HTML, Word и т. Д. Концепция заголовка, тела, нижнего колонтитула не существует. Даже понятия абзаца, строки или слова не существует. PDF заинтересован только в том, чтобы убедиться, что определенные символы (глифы) показаны в определенных местах.

Итак, если вы хотите придумать динамический подход, вам придется написать алгоритм, который анализирует текстовое положение всего текста на странице, сопоставляет его с другими свойствами этого текста (например, используемый шрифт , размер шрифта, цвет, стиль ...), и из этого анализа создается гипотеза о том, что является заголовком, телом и нижним колонтитулом.