ParagraphAbsorber
ParagraphAbsorber class
Представляет объект-поглотитель объектов структуры страницы, таких как разделы и абзацы. Выполняет поиск разделов и абзацев текста и предоставляет доступ к прямоугольникам и многоугольникам, описывающим его в текстовом координатном пространстве. Также выполняет поиск текстовых сегментов и предоставляет доступ к результатам поиска через!:TextFragments коллекции, сгруппированные по элементам структуры.
public class ParagraphAbsorber
Конструкторы
Имя | Описание |
---|---|
ParagraphAbsorber() | Инициализирует новый экземплярParagraphAbsorber который выполняет поиск разделов/абзацев документа или страницы. |
ParagraphAbsorber(int) | Инициализирует новый экземплярParagraphAbsorber который выполняет поиск разделов/абзацев документа или страницы. |
Характеристики
Имя | Описание |
---|---|
IsMulticolumnParagraphsAllowed { get; set; } | Получает или задает значение, указывающее, можно ли рассматривать начальные строки текста следующего раздела как продолжение последнего абзаца предыдущего раздела. |
PageMarkups { get; } | Получает коллекциюPageMarkup которые были поглощены. |
SectionsSearchDepth { get; set; } | Получает или задает значение, указывающее, сколько раз будет выполняться последовательный поиск более мелких элементов структуры. единицы (столбцы). |
Методы
Имя | Описание |
---|---|
Visit(Document) | Выполняет поиск разделов и абзацев на указанномDocument . |
Visit(Page) | Выполняет поиск по указанномуPage . |
Примечания
После завершения поискаPageMarkups
коллекция будет содержатьPageMarkup
объекты, представляющие структуру страницы коллекциямиMarkupSection
а такжеMarkupParagraph
. TextFragment
Объект предоставляет доступ к тексту вхождения поиска, свойствам текста, а также позволяет редактировать текст и изменять его состояние (шрифт, размер шрифта, цвет и т. д.).
Примеры
Пример демонстрирует, как найти первый сегмент текста каждого абзаца на первой странице документа PDF и выделить его.
// Открыть документ
Document doc = new Document("input.pdf");
// Создаем объект ParagraphAbsorber
ParagraphAbsorber absorber = new ParagraphAbsorber();
// Принять поглотитель для первой страницы
absorber.Visit(doc.Pages[1]);
// Получить объект разметки первой страницы
PageMarkup markup = absorber.PageMarkups[0];
// Перебираем элементы структуры текста страницы, чтобы найти первый текстовый фрагмент каждого абзаца
foreach (MarkupSection section in markup.Sections)
{
foreach (MarkupParagraph paragraph in section.Paragraphs)
{
TextFragment fragment = paragraph.Fragments[0];
// Обновить свойства текста
fragment.TextState.BackgroundColor = Color.LightBlue;
}
}
// Сохранить документ
doc.Save(GetOutputPath("output.pdf"));
Смотрите также
- пространство имен Aspose.Pdf.Text
- сборка Aspose.PDF