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
| Examples | Examples | Examples | Examples |
|---|---|---|---|
Text | str | Examples | Cadena completa de texto sin formato (todas las ejecuciones concatenadas) |
Runs | list[TextRun] | Examples | Lista ordenada de segmentos formateados individualmente |
FontSize | `float | None` | Examples |
Tags | list[NoteTag] | Examples | Etiquetas de OneNote adjuntas a este bloque de texto |
Hereda de CompositeNode / Node
| Examples | Examples |
|---|---|
ParentNode | Nodo contenedor (OutlineElement, TableCell, Title) |
Document | Documento raíz |
Examples
Examples
rt.Append(text: str, style: TextStyle | None = None) -> RichTextAñ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) -> NoneSustituye 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) -> NoneExamples VisitRichTextStart(rt) y VisitRichTextEnd(rt) sobre el visitante.
TextRun
Cada elemento de RichText.Runs es un TextRun:
| Examples | Examples | Examples |
|---|---|---|
Text | str | Texto del segmento |
Style | TextStyle | Propiedades de formato para este segmento |
Start | `int | None` |
End | `int | None` |
TextStyle
TextRun.Style es un TextStyle con las siguientes propiedades:
| Examples | Examples | Examples |
|---|---|---|
Bold | bool | Examples |
Italic | bool | Examples |
Underline | bool | Examples |
Strikethrough | bool | Examples |
Superscript | bool | Examples |
Subscript | bool | Examples |
FontName | `str | None` |
FontSize | `float | None` |
FontColor | `int | None` |
Highlight | `int | None` |
Language | `int | None` |
IsHyperlink | bool | Si esta ejecución es un hipervínculo |
HyperlinkAddress | `str | None` |
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
- Examples: ancestro de RichText
- TextRun: segmento formateado individual
- TextStyle: propiedades de formato
- NoteTag: etiquetas en el texto
- Guía del desarrollador de extracción de texto
- Guía: Extraer texto de OneNote (KB)
- Blog: Extraer texto de OneNote en Python