Как изменить размер шрифта по умолчанию для graphviz?
Я использую doxygen + graphviz для документирования своего кода. Graphviz отлично справляется с созданием изображений.
Есть ли способ изменить шрифт по умолчанию для graphviz? По умолчанию 14, но вместо этого я хочу использовать 12.
Это реальная боль, чтобы изменить шрифт для отдельных элементов, таких как узлы, подграфы, ребра и т.д.
UPDATE:
Для справки здесь используется код, который я использую в doxygen (текстовые поля были переименованы, конечно)
@dot
strict digraph {
node [shape = box, fontsize = 12];
subgraph cluster_main {
fontsize = 12;
shape = box;
label = "main";
subgraph cluster_main_common {
fontsize = 12;
shape = box;
label = "common";
subgraph cluster_main_common_source {
fontsize = 12;
shape = box;
label = "source"
subgraph cluster_file1 {
fontsize = 12;
shape = box;
label = "file1.c";
gSystem [label = "var1" URL = "\ref var1"];
}
subgraph cluster_file2 {
fontsize = 12;
shape = box;
label = "file2.c";
gCard [label = "var2" URL = "\ref var2"];
}
subgraph cluster_file3 {
fontsize = 12;
shape = box;
label = "file3.c";
gPwrSupply [label = "var3" URL = "\ref var3"];
}
}
}
subgraph cluster_main_docs {
fontsize = 12;
shape = box;
label = "docs";
subgraph cluster_main_docs_features {
fontsize = 12;
shape = box;
label = "features";
subgraph cluster_main_docs_features_source {
fontsize = 12;
shape = box;
label = "source"
subgraph cluster_file4 {
fontsize = 12;
shape = box;
label = "file4.c";
deviceInfo [label = "var4" URL = "\ref var4"];
}
}
}
}
}
}
@enddot
Ответы
Ответ 1
Fontsize - это атрибут графа (а также атрибут edge и node). Doxygen генерирует точечный файл, поэтому, например,:
strict digraph {
graph [ bgcolor=lightgray, resolution=128, fontname=Arial, fontcolor=blue,
fontsize=12 ];
node [ fontname=Arial, fontcolor=blue, fontsize=11];
edge [ fontname=Helvetica, fontcolor=red, fontsize=10 ];
}
Конкретные настройки переопределяют общие; поэтому установка fontsize в качестве атрибута node переопределит набор шрифтов как атрибут графа (только для узлов), а установка fontsize для определенных узлов переопределит набор шрифтов для всех узлов.
Если вы попробуете то, что у меня есть, и оно, похоже, не работает, измените шрифт, найдите весь файл точки для настроек "fontsize", удалите их и переустановите fontsize как атрибут node.
Вот полный список атрибутов graphviz .