RichText — Aspose.Note FOSS for Python API Reference
Classe: RichText
ImageRenderOptions: aspose.note ImageRenderOptions: from aspose.note import RichText ImageRenderOptions: CompositeNode
RichText representa um bloco de texto formatado dentro de um OutlineElement, TableCell, ou Title. Ele expõe o conteúdo de texto simples completo via .Text e segmentos de formatação individuais via .TextRuns.
ImageRenderOptions
| ImageRenderOptions | ImageRenderOptions | ImageRenderOptions | ImageRenderOptions |
|---|---|---|---|
Text | str | ImageRenderOptions | String completa de texto simples (todos os trechos concatenados) |
Runs | list[TextRun] | ImageRenderOptions | Lista ordenada de segmentos formatados individualmente |
FontSize | `float | None` | ImageRenderOptions |
Tags | list[NoteTag] | ImageRenderOptions | Tags do OneNote anexadas a este bloco de texto |
Herda de CompositeNode / Node
| ImageRenderOptions | ImageRenderOptions |
|---|---|
ParentNode | Nó contido (OutlineElement, TableCell, Title) |
Document | Documento Raiz |
ImageRenderOptions
ImageRenderOptions
rt.Append(text: str, style: TextStyle | None = None) -> RichTextAnexa um novo trecho de texto com estilo opcional. Retorna self para encadeamento. Opera na memória; as alterações não podem ser salvas de volta para .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) -> NoneSubstitui todas as ocorrências de old_value por new_value em todas as execuções. Opera na memória.
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) -> NoneImageRenderOptions VisitRichTextStart(rt) e VisitRichTextEnd(rt) no visitante.
TextRun
Cada elemento de RichText.Runs é um TextRun:
| ImageRenderOptions | ImageRenderOptions | ImageRenderOptions |
|---|---|---|
Text | str | Texto do segmento |
Style | TextStyle | Propriedades de formatação para este segmento |
Start | `int | None` |
End | `int | None` |
TextStyle
TextRun.Style é um TextStyle com as seguintes propriedades:
| ImageRenderOptions | ImageRenderOptions | ImageRenderOptions |
|---|---|---|
Bold | bool | ImageRenderOptions |
Italic | bool | ImageRenderOptions |
Underline | bool | ImageRenderOptions |
Strikethrough | bool | ImageRenderOptions |
Superscript | bool | ImageRenderOptions |
Subscript | bool | ImageRenderOptions |
FontName | `str | None` |
FontSize | `float | None` |
FontColor | `int | None` |
Highlight | `int | None` |
Language | `int | None` |
IsHyperlink | bool | Se esta execução é um hyperlink |
HyperlinkAddress | `str | None` |
Exemplos de Uso
Obter todo o texto simples
from aspose.note import Document, RichText
doc = Document("MyNotes.one")
for rt in doc.GetChildNodes(RichText):
if rt.Text:
print(rt.Text)Inspecionar todas as execuções com formatação
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}")Extrair hyperlinks
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 o texto em negrito
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)Ler tags
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}")Segurança contra None
Text é sempre um str (nunca None). Runs é sempre uma lista (pode estar vazia). FontSize, FontColor, Highlight, Language, HyperlinkAddress pode ser None.
Veja Também
- ImageRenderOptions: ancestral de RichText
- TextRun: segmento formatado individual
- TextStyle: propriedades de formatação
- NoteTag: tags no texto
- Guia do Desenvolvedor de Extração de Texto
- Como fazer: Extrair texto do OneNote (KB)
- Blog: Extrair texto do OneNote em Python