2011-01-24 27 views
6

Ricevo gli errori "Impossibile trovare/apri il carattere" quando si fa qualcosa con graphviz. Sono stato restringendo il campo a un semplice grafico come possibile, nel file simplest.dot:Graphviz non riesce a trovare alcun carattere

digraph G { 
    node1 
} 

Quando si esegue $ dot simplest.dot -Tpng -O il grafico è reso a simplest.dot.png, ma ho sempre ottenere questo errore: Error: Could not find/open font, e il font utilizzato nell'output non è molto carina.

In base al grafico faq, quando si verifica questo errore, è possibile tell graphviz where to look for fonts. Sono stato in cerca di caratteri sul sistema che sto usando, e sembra che ci siano alcuni caratteri TrueType in /usr/share/fonts, tra gli altri, i font Bitstream Vera, che sembrano vivere in /usr/share/fonts/bitstream-vera.

Così ho provato a installare fontpath e fontname nel grafico punto, per aiutare le cose figura graphviz out:

digraph G { 
    fontpath="/usr/share/fonts/bitstream-vera" 
    fontname="Bitstream Vera Sans" 
    node1 
} 

Ma sto ancora ricevendo lo stesso errore esatto. Ho provato diverse varianti del percorso e il nome del font, ma non riesco a farlo bene. Che cosa sto facendo di sbagliato?

risposta

2

Questo potrebbe essere un colpo nel buio, ma in http://www.graphviz.org/doc/info/attrs.html#d:fontname si dice Se si specifica fontname = schlbk, lo strumento cercherà un file chiamato schlbk.ttf o schlbk.pfa o schlbk.pfb in una delle directory specificato dall'attributo fontpath.

Quindi, probabilmente sarei provare

digraph G { 
    fontpath="/usr/share/fonts/bitstream-vera" 
    fontname="nameOfttfWITHOUTsuffix.ttf" 
    node1 
} 
+0

In realtà sembra che questo funziona! Mi sento un po 'stupido a non provarlo da solo. Grazie! – oyvindio