《Java核心技术 卷Ⅱ 高级特性(原书第10版)》一3.7.4 示例:生成SVG文件
3.7.4 示例:生成SVG文件
程序清单3-10是一个生成XML输出的典型程序。该程序绘制了一幅现代派绘画,即一组随机的彩色矩形(参见图3-6)。我们使用可伸缩向量图形(Scalable Vector Graphics, SVG)来保存作品。SVG是XML格式的,它使用设备无关的方式描述复杂图形。你可以在http://www.w3c.org/ Graphics/SVG找到更多关于SVG的信息。要查看SVG文件,只需使用任意的现在主流的浏览器。
我们并没有涉及SVG的细节。就我们的目的而言,我们只需要知道怎样表示一组彩色的矩形。下面是一个例子:
正如你看到的,每个矩形都被描述成了一个rect节点。它有位置、宽度、高度和填充色等属性,其中填充色以十六进制RGB值表示。
注意:SVG大量使用了属性。实际上,某些属性相当复杂。例如,下面的path元素:
M是指“moveto”命令、L是指“lineto”、z是指“closepath”(!)。显然,该数据格式的设计者不太信任XML表示结构化数据的能力。在你自己的XML格式中,你可能想使用元素来替代复杂的属性。