RichText

RichText — Aspose.Note FOSS for Python API Reference

Clase: RichText

Examples: aspose.note Examples: from aspose.note import RichText Examples: CompositeNode

RichText representa un bloque de texto con estilo dentro de un OutlineElement, TableCell, o Title. Expone el contenido completo de texto sin formato a través de .Text y segmentos de formato individual a través de .Runs.


Examples

ExamplesExamplesExamplesExamples
TextstrExamplesCadena completa de texto sin formato (todas las ejecuciones concatenadas)
Runslist[TextRun]ExamplesLista ordenada de segmentos formateados individualmente
FontSize`floatNone`Examples
Tagslist[NoteTag]ExamplesEtiquetas de OneNote adjuntas a este bloque de texto

Hereda de CompositeNode / Node

ExamplesExamples
ParentNodeNodo contenedor (OutlineElement, TableCell, Title)
DocumentDocumento raíz

Examples

Examples

rt.Append(text: str, style: TextStyle | None = None) -> RichText

Añade una nueva ejecución de texto con estilo opcional. Devuelve self para encadenamiento. Funciona en memoria; los cambios no pueden guardarse de nuevo en .one.

from aspose.note import Document, RichText

doc = Document("MyNotes.one")
first_rt = doc.GetChildNodes(RichText)[0]
first_rt.Append(" [reviewed]")

Replace(old_value, new_value)

rt.Replace(old_value: str, new_value: str) -> None

Sustituye todas las apariciones de old_value con new_value en todas las ejecuciones. Funciona en memoria.

from aspose.note import Document, RichText

doc = Document("MyNotes.one")
for rt in doc.GetChildNodes(RichText):
    rt.Replace("TODO", "DONE")

Accept(visitor)

rt.Accept(visitor: DocumentVisitor) -> None

Examples VisitRichTextStart(rt) y VisitRichTextEnd(rt) sobre el visitante.


TextRun

Cada elemento de RichText.Runs es un TextRun:

ExamplesExamplesExamples
TextstrTexto del segmento
StyleTextStylePropiedades de formato para este segmento
Start`intNone`
End`intNone`

TextStyle

TextRun.Style es un TextStyle con las siguientes propiedades:

ExamplesExamplesExamples
BoldboolExamples
ItalicboolExamples
UnderlineboolExamples
StrikethroughboolExamples
SuperscriptboolExamples
SubscriptboolExamples
FontName`strNone`
FontSize`floatNone`
FontColor`intNone`
Highlight`intNone`
Language`intNone`
IsHyperlinkboolSi esta ejecución es un hipervínculo
HyperlinkAddress`strNone`

Ejemplos de uso

Obtener todo el texto sin formato

from aspose.note import Document, RichText

doc = Document("MyNotes.one")
for rt in doc.GetChildNodes(RichText):
    if rt.Text:
        print(rt.Text)

Inspeccionar todas las ejecuciones con formato

from aspose.note import Document, RichText

doc = Document("MyNotes.one")
for rt in doc.GetChildNodes(RichText):
    for run in rt.TextRuns:
        s = run.Style
        attrs = [a for a, v in [
            ("bold", s.IsBold), ("italic", s.IsItalic),
            ("underline", s.IsUnderline), ("strike", s.IsStrikethrough),
        ] if v]
        label = ", ".join(attrs) or "plain"
        print(f"  [{label}] {run.Text!r}")

Extraer hipervínculos

from aspose.note import Document, RichText

doc = Document("MyNotes.one")
for rt in doc.GetChildNodes(RichText):
    for run in rt.TextRuns:
        if run.Style.IsHyperlink and run.Style.HyperlinkAddress:
            print(f"  {run.Text!r} -> {run.Style.HyperlinkAddress}")

Encontrar todo el texto en negrita

from aspose.note import Document, RichText

doc = Document("MyNotes.one")
bold_segments = [
    run.Text for rt in doc.GetChildNodes(RichText)
    for run in rt.TextRuns
    if run.Style.IsBold and run.Text.strip()
]
print(bold_segments)

Leer etiquetas

from aspose.note import Document, RichText

doc = Document("MyNotes.one")
for rt in doc.GetChildNodes(RichText):
    for tag in rt.Tags:
        print(f"Tag: {tag.label!r}  on text: {rt.Text.strip()!r}")

Seguridad contra None

Text siempre es un str (nunca None). Runs siempre es una lista (puede estar vacía). FontSize, FontColor, Highlight, Language, HyperlinkAddress puede ser None.


Ver también

 Español