TextSegment

TextSegment class

Representa un segmento de texto PDF.

public sealed class TextSegment

Constructores

NombreDescripción
TextSegment()Crea el objeto TextSegment.
TextSegment(string)Crea el objeto TextSegment.

Propiedades

NombreDescripción
BaselinePosition { get; set; }Obtiene la posición del texto, representada conTextSegment objeto. La sangría Y de la estructura Posición representa la coordenada de línea base del segmento de texto.
Characters { get; }Obtiene una colección de objetos CharInfo que representan información sobre los caracteres en el segmento de texto.
EndCharIndex { get; }Obtiene el índice de carácter final del segmento actual en el segmento del operador de mostrar texto (Tj, TJ).
Hyperlink { get; set; }Obtiene o establece el hipervínculo del segmento (para el generador de pdf).
Position { get; set; }Obtiene la posición del texto, representada conTextSegment objeto.
Rectangle { get; }Obtiene el rectángulo del TextSegment
StartCharIndex { get; }Obtiene el índice de carácter inicial del segmento actual en el segmento del operador de mostrar texto (Tj, TJ).
Text { get; set; }Obtiene o estableceString objeto de texto que elTextSegment objeto representa.
TextEditOptions { get; set; }Obtiene o establece opciones de edición de texto. Las opciones definen un comportamiento especial cuando el símbolo solicitado no se puede escribir con font.
TextState { get; set; }Obtiene o establece el estado de texto para el texto queTextSegment objeto representa.

Métodos

NombreDescripción
static MyHtmlEncode(string)Codifica la cadena como html.

Observaciones

En pocas palabras,TextSegment los objetos son hijos deTextFragment objeto. En detalle: Texto del documento pdf enPdf está representado por dos objetos básicos:TextFragment yTextSegment Las diferencias entre ellos dependen principalmente del contexto. Consideremos el siguiente escenario. El usuario busca el texto “hola mundo” para operar con él, cambiar sus propiedades, buscar, etc. La representación del texto pdf físicamente es muy compleja. El texto “hola mundo” puede consistir en varios segmentos de texto físicamente independientes. El modelo de texto Aspose.Pdf básicamente establece queTextFragment object proporciona una operación lógica única establecida sobre físicaTextSegment conjunto de objetos que representan la consulta del usuario. En el escenario de búsqueda de texto,TextFragment es la representación de texto lógica “hola mundo”, yTextSegmentla colección de objetos representa todos los segmentos físicos que construyen el objeto de texto “hola mundo”. Entonces,TextFragment está cerca de la representación de texto lógico. YTextSegment está cerca de la representación de texto físico. Obviamente cadaTextSegment el objeto puede tener su propia fuente, color, propiedades de posicionamiento. TextFragment proporciona una forma sencilla de cambiar el texto con sus propiedades: establecer fuente, establecer tamaño de fuente, establecer color de fuente, etc. Mientras tantoTextSegment los objetos son accesibles y los usuarios pueden operar conTextSegment objetos independientemente.

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

Ejemplos

El ejemplo muestra cómo cambiar el color del texto y el tamaño de fuente del texto conTextState objeto deTextSegment objeto.

// Abrir documento
Document doc = new Document(@"D:\Tests\input.pdf");

// Crear objeto TextFragmentAbsorber para encontrar todas las apariciones de texto "hola mundo"
TextFragmentAbsorber absorber = new TextFragmentAbsorber("hello world");

// Aceptar el absorbedor para la primera página
doc.Pages[1].Accept(absorber);

// Cambiar el color de primer plano del primer segmento de texto de la primera aparición de texto
absorber.TextFragments[1].Segments[1].TextState.ForegroundColor = Color.FromRgb(System.Drawing.Color.Red);
// Cambiar el tamaño de fuente del primer segmento de texto de la primera aparición de texto
absorber.TextFragments[1].Segments[1].TextState.FontSize = 15;

// Guardar documento
doc.Save(@"D:\Tests\output.pdf");  

Ver también