2

<defs>で定義した要素を、別の要素のフィルターのソース入力として使用したいと考えています。

私の目標は、フィルターを適用するフォームと別のフォームの 2 つのフォームでコンポジットを作成することです。

これが機能することを期待していましたが、機能しません。

<defs>
  <rect id="shape1" (...) />

  <filter id="f1">
    <feComposite in="SourceGraphic" in2="#shape1" operator="xor" />
  </filter>
</defs>
<circle id="shape2" filter="url(#f1)" (...) />

機能させるにはどうすれば交換できin2="#shape1"ますか?

4

1 に答える 1

3

このように、フィルターの「in」プロパティで形状を直接参照することはできません。最初にそれを引き込む必要があります

<feImage .... result="myShape1"> 

それを in2="myShape1" として参照します。IE10 は、フィルターに取り込まれたドキュメント内要素をこのように処理する方法において、webkit とは異なる動作をします。Webkit/blink は、feImage で宣言された x、y を元の要素の x、y 座標への追加の変換として扱うという点で、仕様に準拠しています。IE10は、元の要素の x、y 座標を新しい座標に置き換えるようです。

于 2013-04-26T15:04:29.480 に答える