在Graphviz的HTML标签中使用CSS类
我有一个graphviz(2.38.0(20140413.2041))图,其中每个节点包含几行文本,我希望不同的行具有不同的样式。目前我有:在Graphviz的HTML标签中使用CSS类,css,graphviz,Css,Graphviz,我有一个graphviz(2.38.0(20140413.2041))图,其中每个节点包含几行文本,我希望不同的行具有不同的样式。目前我有: digraph G{ stylesheet = "styles.css"; graph[rankdir=BT]; node[shape=box]; Andrew[label=< Andrew <br />Red <br />34
digraph G{
stylesheet = "styles.css";
graph[rankdir=BT];
node[shape=box];
Andrew[label=<
Andrew
<br />Red
<br />34
>];
James[label=<
James
<br />Yellow
<br />26
>];
Andrew -> James;
}
我希望能够使用以下功能:
Andrew[label=<
<font class="name">Andrew</font>
<br />Red
<br /><font class="age">34</font>
>];
安德鲁[标签]=<
安得烈
红色
34 >]; 但不幸的是,dot给了我:
Warning: Illegal attribute class in <FONT> - ignored
Warning: Illegal attribute class in <FONT> - ignored
警告:中的属性类非法-已忽略
警告:中的属性类非法-已忽略
我进行了一次搜索,但什么也找不到,所以我不确定是否有更好的方法来实现我试图实现的目标(例如某种生成重复格式的宏)。graphviz接受的HTML子集似乎没有在
中包含类属性
(来自)
正如你在评论中指出的
dot抱怨div、p和span的未知HTML元素
他们谈论它:
注意:这些标签支持的特性和语法是基于HTML建模的。然而,有许多方面与Graphviz标签相关,而这些标签不在HTML中,相反,HTML允许各种在Graphviz中没有意义的构造。我们通常将这些标签称为“HTML标签”,而不是繁琐的“类似HTML的标签”,但读者应注意,这些标签并非真正的HTML。下面的语法正好描述了Graphviz将接受的内容
为什么使用font class
而不使用div class
?dot
抱怨未知的HTML元素对于div
,p
和span
确切地说,dot不支持完整的HTML标准,这就是为什么它被正式称为“类似HTML的标签”(尽管我希望他们能支持更多的标签:D)。在我看来,这应该是可以接受的答案。
Warning: Illegal attribute class in <FONT> - ignored
Warning: Illegal attribute class in <FONT> - ignored
<!-- Font specification -->
<FONT
COLOR="color"
FACE="fontname"
POINT-SIZE="value"
>