TextFragment

TextFragment class

Representa fragmento de texto PDF.

public class TextFragment : BaseParagraph

Constructores

NombreDescripción
TextFragment()Inicializa una nueva instancia delTextFragment objeto.
TextFragment(string)CreaTextFragment objeto con soloTextSegment objeto dentro. Especifica la cadena de texto dentro del segmento.
TextFragment(TabStops)Inicializa una nueva instancia delTextFragment objeto con predefinidoTabStops posiciones.
TextFragment(string, TabStops)CreaTextFragment objeto con soloTextSegment objeto dentro y predefinidoTabStops posiciones.

Propiedades

NombreDescripción
BaselinePosition { get; set; }Obtiene la posición del texto, representada conTextFragment object. El YIndent de la estructura Position representa la coordenada de línea base del fragmento de texto.
EndNote { get; set; }Obtiene o establece la nota final del párrafo (solo para generación de PDF)
FootNote { get; set; }Obtiene o establece la nota al pie del párrafo (solo para generación de pdf)
Form { get; }Obtiene el objeto de formulario que contiene el TextFragment
override HorizontalAlignment { get; set; }Obtiene o establece una alineación horizontal del fragmento de texto.
override Hyperlink { set; }Establece el fragmento hipervínculo
IsFirstParagraphInColumn { get; set; }Obtiene o establece un valor bool que indica si este párrafo estará en la siguiente columna. El valor predeterminado es falso. (para la generación de PDF)
IsInLineParagraph { get; set; }Obtiene o establece que un párrafo está en línea. El valor predeterminado es falso. (para la generación de PDF)
IsInNewPage { get; set; }Obtiene o establece un valor booleano que obliga a generar este párrafo en una nueva página. El valor predeterminado es falso. (para la generación de PDF)
IsKeptWithNext { get; set; }Obtiene o establece un valor booleano que indica si el párrafo actual permanece en la misma página junto con el párrafo siguiente. El valor predeterminado es falso. (para la generación de PDF)
Margin { get; set; }Obtiene o establece un margen exterior para el párrafo (para la generación de pdf)
Page { get; }Obtiene la página que contiene el TextFragment
Position { get; set; }Obtiene o establece la posición del texto para el texto, representado conTextFragment objeto.
Rectangle { get; }Obtiene el rectángulo del TextFragment
ReplaceOptions { get; }Obtiene opciones de reemplazo de texto. Las opciones definen el comportamiento cuando el texto del fragmento se reemplaza por más corto/largo.
Segments { get; set; }Obtiene segmentos de texto para el actualTextFragment .
Text { get; set; }Obtiene o estableceString objeto de texto que elTextFragment objeto representa.
TextState { get; }Obtiene o establece el estado de texto para el texto queTextFragment objeto representa.
override VerticalAlignment { get; set; }Obtiene o establece una alineación vertical del fragmento de texto.
WrapLinesCount { get; set; }Obtiene o establece el recuento de líneas de ajuste para este párrafo (solo para generación de PDF)
ZIndex { get; set; }Obtiene o establece un valor int que indica el orden Z del gráfico. Un gráfico con ZIndex más grande se colocará sobre el gráfico con ZIndex más pequeño. ZIndex puede ser negativo. El gráfico con ZIndex negativo se colocará detrás del texto en la página.

Métodos

NombreDescripción
override Clone()Clonar el fragmento.
virtual CloneWithSegments()Clonar el fragmento con todos los segmentos.
IsolateTextSegments(int, int)ObtieneTextSegment (s) que representa una parte especificada de laTextFragment texto.

Observaciones

En pocas palabras,TextFragment El objeto contiene una lista deTextSegment objetos. 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 de forma independiente. Tenga en cuenta que cambiar las propiedades de TextFragment puede cambiarSegments colección porque TextFragment es un objeto agregado y puede reorganizar segmentos internos o fusionarlos en un solo segmento. Si su requisito es dejar elSegmentscolección sin cambios, cambie los segmentos internos individualmente.

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

Ejemplos

El ejemplo demuestra cómo encontrar texto en la primera página del documento PDF y reemplazar el texto y su fuente.

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

// Encuentra la fuente que se usará para cambiar la fuente del texto del documento
Aspose.Pdf.Txt.Font font = FontRepository.FindFont("Arial");

// 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);

// Cambia el texto y la fuente de la primera aparición de texto
absorber.TextFragments[1].Text = "hi world";
absorber.TextFragments[1].TextState.Font = font;

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

Ver también