$ dot -Timap input.dot $ dot -Timap_np input.dot $ dot -Tismap input.dot $ dot -Tcmap input.dot $ dot -Tcmapx input.dot $ dot -Tcmapx_np input.dot
图像地图
imap
和 cmapx
生成用于服务器端和客户端图像地图的地图文件。这些可以在网页中与图形形式的输出一起使用,例如 JPEG、GIF 或 PNG 格式,将链接附加到节点和边。Graphviz 仅当对象具有非平凡的 URL 或 href 属性,或具有明确的 tooltip 属性时,才会生成对象的映射信息。
cmap
生成用于客户端图像地图的地图文件。它与 cmapx
几乎完全相同,但后者是格式良好的 XML,适合 XML 工具处理。特别是,cmapx
输出被包裹在 <map></map>
中。
imap_np
和 cmapx_np
与 imap
和 cmapx
格式相同,只是它们仅依赖于矩形作为活动区域。
ismap
是 imap
格式的前身(大约在 1994 年)。现在大多数服务器使用后者。
例如,要为给定的点文件创建服务器端地图
/* x.gv */
digraph mainmap {
URL="http://www.research.att.com/base.html";
command [URL="http://www.research.att.com/command.html"];
command -> output [URL="colors.html"];
}
需要处理图形并生成两个输出文件
dot -Timap -ox.map -Tgif -ox.gif x.gv
然后在网页中引用它
<A HREF="x.map"><IMG SRC="x.gif" ismap="ismap" /></A>
对于客户端地图,再次生成两个输出文件
dot -Tcmapx -ox.map -Tgif -ox.gif x.gv
并使用以下 HTML
<IMG SRC="x.gif" USEMAP="#mainmap" />
... [content of x.map] ...
请注意,USEMAP 属性中给出的名称必须与 MAP 元素的 ID 属性相同。Graphviz 渲染器使用图形的名称作为 ID。因此,在上面的示例中,图形的名称为 mainmap
,我们在 IMG 属性中具有 USEMAP="#mainmap"
,而 x.map 将如下所示
<map id="mainmap" name="mainmap">
...
</map>
URL
可以附加到根图形、节点和边。如果节点具有 URL,则单击节点将激活该链接。如果边具有 URL,则沿边的各个点(但不一定是头部或尾部)将链接到它。此外,如果边具有 label
,则它将链接到该 URL。至于边的头部,它链接到 headURL
(如果已设置)。否则,如果定义了边的 URL,它将链接到边的 URL。对于尾部和 tailURL
也是如此。与图形关联的 URL 用作默认链接。
如果节点的 URL
包含转义序列 \N
,它将被节点的名称替换。如果定义了 headURL
并且包含转义序列 \N
,它将被 headlabel
(如果定义)替换。对于 tailURL
和 taillabel
也是如此。
请参阅 ID 输出说明。