Graphviz не поддерживает кодировку UTF-8 - PullRequest
5 голосов
/ 19 июля 2011

Я создал точечный файл. Который содержит некоторый корейский язык в метке какого-то узла .i создал png файл с помощью инструмента graphvig, но созданный png не поддерживает корейский язык, он отображается в виде квадратной рамки.Если я создаю SVG-файл, то он работает нормально.помогите мне, как решить эту проблему.

Ответы [ 5 ]

4 голосов
/ 19 июля 2011

Также попробуйте запустить dot -v, чтобы увидеть, какие плагины и файлы шрифтов загружаются. Как правило, мы ожидаем, что UTF-8 будет работать (много лет над этим было проделано), и верстка текста с помощью драйвера cairopango работает хорошо. Недостатком является то, что теперь pango выполняет свой собственный поиск шрифтов, который является чем-то вроде черного ящика для другого кода. (pango недавно удалил fontconfig, что понятно. Мы никогда не нашли способ определить, не удалось ли fontconfig найти хорошее совпадение для данной спецификации - он бы с радостью возвратил, например, шрифт пишущей машинки, когда не смог найти другое совпадение.) Надеюсь, это немного поможет. Стивен Норт (для проекта graphviz)

3 голосов
/ 18 февраля 2017

У меня была такая же проблема, когда генерируется файл .png, символы, отличные от ascii, отображаются неправильно.

Мое альтернативное решение - использовать вывод .svg (с помощью некоторой команды, такой как: dot -Tsvg my_graph.gv), который оставил проблему поиска шрифта для средства просмотра svg.

Вы можете открыть файл .svg с помощью веб-браузера. Большинство веб-браузеров также поддерживают функцию save as для преобразования файла .svg в .png, если вы настаиваете на формате .png.

Надеюсь, что это полезно

0 голосов
/ 26 августа 2018

Я столкнулся с той же проблемой, и мне помогло добавление следующих строк:

strict digraph { 
node [ fontname="Adobe Kaiti Std" ];
edge [ fontname="Adobe Heiti Std" ];
} 
0 голосов
/ 19 июля 2011

Обязательно определите корейский fontname на вашем графике.

0 голосов
/ 19 июля 2011

Используйте инструмент для преобразования файла SVG в PNG. Я предлагаю батик . Конечно, вам придется иметь дело с установкой шрифтов. Кроме того, вы можете использовать Inkscape , хотя это немного больше ручного процесса.

...