9

Batik を使用してオーバーレイする必要がある 2 つの SVG ファイルがあります。1 つのファイルは背景画像として機能し、308 ピクセル x 308 ピクセルで、2 番目のファイル (260 ピクセル x 260 ピクセル) は中央に配置する必要がある前景画像です (つまり、背景画像の中央に配置します)。操作の結果を 3 番目の 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 を使用してドキュメントを作成する例については、こちらを参照してください。

2 つのドキュメントを 1 つにマージする必要がある場合は、次のことができます。

  • let a = background.svgの解析Document結果
  • let b = Documentforeground.svg の解析結果
  • e =とするa.importNode(b.getDocumentElement(), true)
  • exの属性とy属性を「24」に設定します
  • 電話a.getDocumentElement().appendChild(e)

これで、前景のコンテンツがマージされたドキュメントになります

于 2010-06-22T02:13:34.560 に答える