Как изменить размер шрифта по умолчанию для Graphviz? - PullRequest
23 голосов
/ 21 декабря 2009

Я использую 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 Ответ

38 голосов
/ 25 декабря 2009

Размер шрифта - это атрибут графа (а также атрибут ребра и узла). 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 в качестве атрибута узла переопределит размер шрифта, установленный как атрибут графа (только для узлов), а установка размера шрифта для определенных узлов переопределит набор шрифта для всех узлов.

Если вы попробуете то, что у меня есть выше, и это, похоже, не сработает, измените размер шрифта, поищите во всем файле точек настройки «размера шрифта», удалите их и заново установите размер шрифта как атрибут узла.

Вот полный список атрибутов graphviz .

...