TextSegment
TextSegment class
Representa un segmento de texto PDF.
public sealed class TextSegment
Constructores
Nombre | Descripción |
---|---|
TextSegment() | Crea el objeto TextSegment. |
TextSegment(string) | Crea el objeto TextSegment. |
Propiedades
Nombre | Descripció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
Nombre | Descripció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”, yTextSegment
la 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
- espacio de nombres Aspose.Pdf.Text
- asamblea Aspose.PDF