SVG 仕様によれば、SVG 要素に適用される各変換は、現在の座標系のコピー。その後、後続の変換がこの新しい座標系に適用され、カスケード効果が作成されます。
各変換は次の変換が適用される前に座標系を変更するため、変換の順序は重要です。たとえば、要素が回転されてから変換される場合、変換は最初の回転されていない座標系ではなく、回転された座標系を基準にして行われます。
コード スニペットに示されている例を考えてみましょう。最初の長方形 (スケール/回転) では、現在の座標系が 10 度回転される前に、X 軸で 2 倍にスケールされます。これにより、実質的に歪んだ長方形の形状が得られます。
対照的に、2 番目の長方形 (回転/スケール) では、現在の座標系が 10 度回転されてから、x 軸で 2 倍にスケールされます。 -軸。回転が最初に適用されるため、その後のスケーリングは回転された座標系を基準にして行われます。これにより、歪みのない X 軸に沿って単純に引き伸ばされた長方形が作成されます。
最初の長方形 (スケール/回転) の場合、スケーリングこの操作は要素自体の形状に影響を与えます。次に要素を回転すると、変換された形状も回転し、その結果、傾き効果が生じます。
一方、2 番目の長方形 (回転/スケール) では、回転操作は座標系に影響を与えます。その後要素をスケーリングすると、回転した座標系を基準にしてスケーリングが行われ、長方形の元の形状が歪むことなく維持されます。
効果を制御するには、変換の順序を理解することが不可欠です。 SVG での連鎖変換の説明。特定の順序で変換を適用することで、要素に望ましい視覚効果を実現できます。
以上が変換の順序が SVG の結果に影響するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。