9

我有 2 个 SVG 文件需要使用 Batik 覆盖。一个文件用作背景图像,大小为 308 像素 x 308 像素,而第二个文件(260 像素 x 260 像素)是必须居中的前景图像(即位于背景图像的中心)。我希望将操作结果保存在第三个 SVG 文件中。如果您熟悉蜡染,我会很感激您的建议。

谢谢,

奥利维尔。

4

1 回答 1

7

如果您不需要在最后一个中包含背景和前景文档的内容,您可以使用简单的引用它们:

<svg xmlns='http://www.w3.org/2000/svg'
     xmlns:xlink='http://www.w3.org/1999/xlink'
     width='308' height='308' viewBox='0 0 308 308'>
  <image xlink:href='background.svg' width='308' height='308'/>
  <image xlink:href='foreground.svg' x='24' y='24' width='260' height='260'/>
</svg>

使用 DOM 构建此文档应该很简单。有关使用 DOM API 构建文档的示例,请参见此处。

如果您需要将两个文档合并为一个,那么您可以:

  • a =解析background.svg的Document结果
  • b =Document解析foreground.svg的结果
  • e =a.importNode(b.getDocumentElement(), true)
  • ex的andy属性设置为“24”
  • 称呼a.getDocumentElement().appendChild(e)

现在a是一个合并了前台内容的文档。

于 2010-06-22T02:13:34.560 回答