matplotlib.afm
#
Attenzione
Questo modulo è considerato interno.
Il suo utilizzo è deprecato e verrà rimosso in una versione futura.
Un'interfaccia Python per Adobe Font Metrics Files.
Sebbene esistano numerose altre implementazioni di Python, e potrebbero essere più complete di questa, si è deciso di non utilizzarle perché erano:
protetto da copyright o utilizzato una licenza non compatibile con BSD
aveva troppe dipendenze ed era necessaria una libreria indipendente
ha fatto più del necessario ed è stato più facile scrivere di nuovo piuttosto che capire come ottenere solo ciò che era necessario.
È abbastanza facile da usare e non ha dipendenze esterne:
>>> import matplotlib as mpl
>>> from pathlib import Path
>>> afm_path = Path(mpl.get_data_path(), 'fonts', 'afm', 'ptmr8a.afm')
>>>
>>> from matplotlib.afm import AFM
>>> with afm_path.open('rb') as fh:
... afm = AFM(fh)
>>> afm.string_width_height('What the heck?')
(6220.0, 694)
>>> afm.get_fontname()
'Times-Roman'
>>> afm.get_kern_dist('A', 'f')
0
>>> afm.get_kern_dist('A', 'y')
-92.0
>>> afm.get_bbox_char('!')
[130, -9, 238, 676]
Come nella specifica del formato file di Adobe Font Metrics, tutte le dimensioni sono fornite in unità di 1/1000 del fattore di scala (dimensione in punti) del carattere utilizzato.
- classe matplotlib._afm. AFM ( fh ) [fonte] #
Basi:
object
Analizza il file AFM nell'oggetto file fh .
- proprietà nome_famiglia #
Il nome della famiglia di caratteri, ad esempio "Times".
- get_height_char ( c , isord = False ) [fonte] #
Ottieni l'altezza del riquadro di delimitazione (inchiostro) del carattere c (lo spazio è 0).
- get_horizontal_stem_width ( ) [fonte] #
Restituisce la larghezza dello stelo orizzontale standard come float o None se non specificato nel file AFM.
- get_kern_dist ( c1 , c2 ) [fonte] #
Restituisce la distanza della coppia di crenatura (possibilmente 0) per i caratteri c1 e c2 .
- get_kern_dist_from_name ( nome1 , nome2 ) [fonte] #
Restituisce la distanza della coppia di crenatura (possibilmente 0) per i caratteri name1 e name2 .
- get_name_char ( c , isord = False ) [fonte] #
Ottieni il nome del personaggio, ad esempio ';' è 'punto e virgola'.
- get_str_bbox_and_descent ( s ) [fonte] #
Restituisce il riquadro di delimitazione delle stringhe e la massima discesa.
- get_vertical_stem_width ( ) [fonte] #
Restituisce la larghezza dello stelo verticale standard come float o None se non specificato nel file AFM.
- get_width_char ( c , isord = False ) [fonte] #
Ottieni la larghezza del carattere dal campo WX della metrica del carattere.
- get_width_from_char_name ( nome ) [fonte] #
Ottieni la larghezza del carattere da un nome di carattere type1.
- proprietà postscript_name #
- classe matplotlib._afm. CharMetrics ( larghezza , nome , bbox ) [fonte] #
Basi:
tuple
Rappresenta le metriche dei caratteri di un singolo carattere.
Appunti
I campi attualmente descrivono solo un sottoinsieme di informazioni sulla metrica dei caratteri definite nello standard AFM.
Crea una nuova istanza di CharMetrics (larghezza, nome, bbox)
- casella #
La bbox del carattere (B) come tupla ( llx , lly , urx , ury ).
- nome #
Il nome del personaggio (N).
- larghezza #
La larghezza del carattere (WX).
- classe matplotlib._afm. CompositePart ( nome , dx , dy ) [fonte] #
Basi:
tuple
Rappresenta le informazioni su un elemento composito di un carattere composito.
Crea una nuova istanza di CompositePart(name, dx, dy)
- dx #
x-spostamento della parte dall'origine.
- dì #
spostamento y della parte dall'origine.
- nome #
Nome della parte, ad esempio 'acuta'.