TextStyle

Klasa: TextStyle

TextStyle sadrži kompletan skup atributa formatiranja po znaku za jedan TextRun. Izlaže se putem TextRun.Style. Svi logički zastavice zadane su na False; sva opcionalna polja zadana su na None.


Sva svojstva su za čitanje/pisanje.

| ————————- | ————————- | ————————- | ————————————————————————————————— | | FontName | str | None | None | Naziv obitelji fonta (npr. "Calibri", "Arial"). None znači da se nasljeđuje roditeljski stil. | | FontSize | float | None | None | Veličina fonta u točkama. None znači nasljeđeno. | | FontColor | int | None | None | Boja fonta kao pakirani ARGB cijeli broj. None znači nasljeđeno. | | Highlight | int | None | None | Boja pozadinskog isticanja kao pakirani ARGB cijeli broj. None znači bez isticanja. |

Zastavice stila

| ————————- | ————————- | ————————- | ————————— | | Bold | bool | False | Podebljano | | Superscript | bool | False | Superskripta osnovna linija | | Subscript | bool | False | Subskripta osnovna linija |

| ————————- | ————————- | ————————- | —————————————————————————- | | Language | int | None | None | Windows LCID za jezik dijela (npr. 1033 = en-US). None znači neodređeno. |

| ————————- | ————————- | ————————- | ———————————————— | | IsHyperlink | bool | False | True kada je ovaj pokret klikabilna hiperveza. | | HyperlinkAddress | str | None | None | Ciljani URL kada IsHyperlink je True. |


ARGB kodiranje boje

FontColor i HighlightColor se pohranjuju kao spakirani 32-bitni ARGB cijeli brojevi, u skladu s binarnim formatom MS-ONE. Za dekodiranje:

argb = run.Style.FontColor
if argb is not None:
    a = (argb >> 24) & 0xFF
    r = (argb >> 16) & 0xFF
    g = (argb >>  8) & 0xFF
    b =  argb        & 0xFF
    print(f"RGBA({r}, {g}, {b}, {a})")

Primjer upotrebe

Ispis atributa formatiranja za svaki segment

from aspose.note import Document, RichText

doc = Document("MyNotes.one")
for rt in doc.GetChildNodes(RichText):
    for run in rt.TextRuns:
        s = run.Style
        parts = []
        if s.IsBold:           parts.append("bold")
        if s.IsItalic:         parts.append("italic")
        if s.IsUnderline:      parts.append("underline")
        if s.IsStrikethrough:  parts.append("strikethrough")
        if s.FontName:       parts.append(f"font={s.FontName!r}")
        if s.FontSize:       parts.append(f"size={s.FontSize}pt")
        if s.IsHyperlink:    parts.append(f"href={s.HyperlinkAddress!r}")
        label = ", ".join(parts) or "plain"
        print(f"  [{label}] {run.Text!r}")

Prikupi sve jedinstveno stilizirane segmente

from aspose.note import Document, RichText

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

print(f"Bold segments ({len(bold_runs)}):", bold_runs)

Sigurnost od None


Vidi također

 Hrvatski