TextSegment

TextSegment class

Représente un segment de texte PDF.

public sealed class TextSegment

Constructeurs

Nom La description
TextSegment() Crée un objet TextSegment.
TextSegment(string) Crée un objet TextSegment.

Propriétés

Nom La description
BaselinePosition { get; set; } Obtient la position du texte pour le texte, représenté parTextSegment object. L’YIndent de la structure Position représente la coordonnée de base du segment de texte.
Characters { get; } Obtient une collection d’objets CharInfo qui représentent des informations sur les caractères dans le segment de texte.
EndCharIndex { get; } Obtient l’index du caractère de fin du segment actuel dans le segment de l’opérateur de texte d’affichage (Tj, TJ).
Hyperlink { get; set; } Obtient ou définit le lien hypertexte du segment (pour le générateur de pdf).
Position { get; set; } Obtient la position du texte pour le texte, représenté parTextSegment objet.
Rectangle { get; } Récupère le rectangle du TextSegment
StartCharIndex { get; } Obtient l’index du caractère de départ du segment actuel dans le segment de l’opérateur de texte d’affichage (Tj, TJ).
Text { get; set; } Obtient ou définitString objet texte que leTextSegment l’objet représente.
TextEditOptions { get; set; } Obtient ou définit les options d’édition de texte. Les options définissent un comportement spécial lorsque le symbole demandé ne peut pas être écrit avec la police.
TextState { get; set; } Obtient ou définit l’état du texte pour le texte quiTextSegment l’objet représente.

Méthodes

Nom La description
static MyHtmlEncode(string) Encode la chaîne en html.

Remarques

En quelques mots,TextSegment les objets sont les enfants deTextFragment objet. En détails : Texte du document pdf dansPdf est représenté par deux objets de base :TextFragment etTextSegment Les différences entre eux dépendent principalement du contexte. Considérons le scénario suivant. L’utilisateur recherche le texte “hello world” pour l’utiliser, modifier ses propriétés, etc. Physiquement, la représentation du texte pdf est très complexe. Le texte “hello world” peut être composé de plusieurs segments de texte physiquement indépendants. Le modèle de texte Aspose.Pdf établit essentiellement queTextFragment object fournit une opération logique unique définie sur physiqueTextSegment ensemble d’objets qui représentent la requête de l’utilisateur. Dans le scénario de recherche de texte,TextFragment est une représentation textuelle logique “hello world”, etTextSegmentla collection d’objets représente tous les segments physiques qui construisent l’objet texte “hello world”. Donc,TextFragment est proche de la représentation logique du texte. EtTextSegment est proche de la représentation textuelle physique. Évidemment, chaqueTextSegment l’objet peut avoir ses propres propriétés de police, de coloration et de positionnement. TextFragment fournit un moyen simple de modifier le texte avec ses propriétés : définir la police, définir la taille de la police, définir la couleur de la police, etc. TextSegment les objets sont accessibles et les utilisateurs peuvent opérer avecTextSegment objets indépendamment.

Document doc = new Document(docFile);
TextFragmentAbsorber absorber = new TextFragmentAbsorber("hello world");
doc.Pages[1].Accept(absorber);

Exemples

L’exemple montre comment changer la couleur du texte et la taille de la police du texte avecTextState objet deTextSegment objet.

// Ouvrir le document
Document doc = new Document(@"D:\Tests\input.pdf");

// Crée un objet TextFragmentAbsorber pour trouver toutes les occurrences de texte "hello world"
TextFragmentAbsorber absorber = new TextFragmentAbsorber("hello world");

// Accepte l'absorbeur pour la première page
doc.Pages[1].Accept(absorber);

// Changer la couleur de premier plan du premier segment de texte de la première occurrence de texte
absorber.TextFragments[1].Segments[1].TextState.ForegroundColor = Color.FromRgb(System.Drawing.Color.Red);
// Changer la taille de la police du premier segment de texte de la première occurrence de texte
absorber.TextFragments[1].Segments[1].TextState.FontSize = 15;

// Enregistrer le document
doc.Save(@"D:\Tests\output.pdf");  

Voir également