MEP29: Marcatura chiara del testo #

Stato n.

Discussione

Filiali e Pull request #

Nessuno al momento, solo proof of concept.

Estratto n.

Questo eurodeputato propone di aggiungere un markup leggero all'artista del testo.

Descrizione dettagliata #

L'uso di dimensioni/colori/famiglie diverse in un'annotazione di testo è difficile perché il textmetodo accetta argomenti per dimensioni/colori/famiglie/pesi/ecc. utilizzati per l'intero testo. Ma, se si desidera, ad esempio, avere colori diversi, è necessario guardare la galleria in cui viene fornito uno di questi esempi: Testo arcobaleno

Questo esempio prende un elenco di stringhe e un elenco di colori che lo rende complicato da usare. Un'alternativa sarebbe quella di utilizzare un insieme ristretto di markup pango -like e di interpretare questo markup.

Alcuni esempi di markup:

Hello <b>world!</b>`
Hello <span color="blue">world!</span>

Implementazione n.

Una prova di concetto è fornita in markup_example.py ma attualmente gestisce solo la direzione orizzontale.

Miglioramenti #

  • Questa prova di concetto utilizza regex per analizzare il testo, ma potrebbe essere meglio utilizzare html.parser dalla libreria standard.

  • Il calcolo delle posizioni dei frammenti di testo potrebbe trarre vantaggio dalla classe OffsetFrom. Vedere ad esempio l'elemento 5 in Utilizzo di coordinate complesse con annotazioni

Problemi #

  • Un problema serio è come gestire il testo con tag LaTeX e simili a HTML. Ad esempio, considera quanto segue:

    $<b>Bold$</b>
    

    La raccomandazione sarebbe quella di avere l'esclusione reciproca.

Compatibilità con le versioni precedenti #

Nessuno al momento poiché è solo una prova di concetto

Alternative #

Come proposto da @anntzer, questo potrebbe essere implementato anche come miglioramento del testo matematico. Per esempio:

r"$\text{Hello \textbf{world}}$"
r"$\text{Hello \textcolor{blue}{world}}$"
r"$\text{Hello \textsf{\small world}}$"