TextSegment
TextSegment class
Представляет сегмент текста Pdf.
public sealed class TextSegment
Конструкторы
Имя | Описание |
---|---|
TextSegment() | Создает объект TextSegment. |
TextSegment(string) | Создает объект TextSegment. |
Характеристики
Имя | Описание |
---|---|
BaselinePosition { get; set; } | Получает текстовую позицию для текста, представленного с помощьюTextSegment object. YIndent структуры Position представляет базовую координату текстового сегмента. |
Characters { get; } | Получает коллекцию объектов CharInfo, представляющих информацию о символах в текстовом сегменте. |
EndCharIndex { get; } | Получает индекс конечного символа текущего сегмента в сегменте оператора отображения текста (Tj, TJ). |
Hyperlink { get; set; } | Получает или задает гиперссылку сегмента (для генератора pdf). |
Position { get; set; } | Получает текстовую позицию для текста, представленного с помощьюTextSegment объект. |
Rectangle { get; } | Получает прямоугольник TextSegment |
StartCharIndex { get; } | Получает индекс начального символа текущего сегмента в сегменте оператора отображения текста (Tj, TJ). |
Text { get; set; } | Получает или устанавливаетString текстовый объект, которыйTextSegment объект представляет. |
TextEditOptions { get; set; } | Получает или задает параметры редактирования текста. Параметры определяют особое поведение, когда запрошенный символ не может быть написан шрифтом. |
TextState { get; set; } | Получает или задает состояние текста для текста,TextSegment объект представляет. |
Методы
Имя | Описание |
---|---|
static MyHtmlEncode(string) | Кодирует строку как html. |
Примечания
В двух словах,TextSegment
объекты являются детьмиTextFragment
object. Подробнее: Текст pdf документа вPdf представлен двумя базовыми объектами:TextFragment
а такжеTextSegment
Различия между ними в основном зависят от контекста. Рассмотрим следующий сценарий. Пользователь ищет текст «hello world», чтобы работать с ним, изменять его свойства, смотреть и т. д. Физически представление текста в формате PDF очень сложное. Текст “hello world” может состоять из нескольких физически независимых текстовых сегментов. Текстовая модель Aspose.Pdf в основном устанавливает, чтоTextFragment
object обеспечивает единую логическую операцию над физическимTextSegment
набор объектов, представляющих запрос пользователя. В сценарии текстового поискаTextFragment
является логическим текстовым представлением “hello world”, иTextSegment
коллекция объектов представляет все физические сегменты, из которых создается текстовый объект «hello world». Итак,TextFragment
близко к логическому текстовому представлению. ИTextSegment
близко к физическому текстовому представлению. Очевидно, что каждыйTextSegment
объект может иметь свой собственный шрифт, цвет, свойства позиционирования. TextFragment
предоставляет простой способ изменить текст с его свойствами: установить шрифт, установить размер шрифта, установить цвет шрифта и т. д. Между темTextSegment
объекты доступны, и пользователи могут работать сTextSegment
объекты независимо друг от друга.
Document doc = new Document(docFile);
TextFragmentAbsorber absorber = new TextFragmentAbsorber("hello world");
doc.Pages[1].Accept(absorber);
Примеры
Пример демонстрирует, как изменить цвет текста и размер шрифта текста с помощьюTextState
объектTextSegment
объект.
// Открыть документ
Document doc = new Document(@"D:\Tests\input.pdf");
// Создаем объект TextFragmentAbsorber для поиска всех вхождений текста "hello world"
TextFragmentAbsorber absorber = new TextFragmentAbsorber("hello world");
// Принять поглотитель для первой страницы
doc.Pages[1].Accept(absorber);
// Изменяем цвет переднего плана первого текстового сегмента первого вхождения текста
absorber.TextFragments[1].Segments[1].TextState.ForegroundColor = Color.FromRgb(System.Drawing.Color.Red);
// Изменяем размер шрифта первого сегмента текста первого вхождения текста
absorber.TextFragments[1].Segments[1].TextState.FontSize = 15;
// Сохранить документ
doc.Save(@"D:\Tests\output.pdf");
Смотрите также
- пространство имен Aspose.Pdf.Text
- сборка Aspose.PDF