0

初めてラファエルを使用していますが、オンラインコンバーターを使用してjavascriptパスに変換したsvgがあります。私は現在問題に直面しています-パスにはすべて.transformがあるため、スクリプトでそれらをスケーリングできません(非常に不可解です-任意のスケールの新しい.transformはそれらを1または2ピクセルにします幅または高さごとに。)

それらはすべて、各パス変数の最後に次のようなものを持っています: myshape.transform("m83.018878,0,0,83.018878,-2814.2764,385.12103")

どうすればこの変換を取り除くことができますか、または既存のものを置き換える代わりに、新しいものを追加して機能させることができますか? または、別の方法でスケーリングを行うことはできますか? アニメーション化する必要はありません。ページ レイアウトに合わせてスケーリングする必要があるだけです。

4

1 に答える 1

0

現在の変換マトリックスは、*83 スケールを示しています。を使用.transformするとこの変換がリセットされ、変換で同じ順序のスケーリングを使用しないと、パスが非常に小さく見えます。

座標変換済みのパスを直接持つように変換ツールの結果コードをリファクタリングするのは難しいでしょう。

ただし、動的に、メソッドを使用して変換されたパス文字列を取得できますRaphael.transformPath。現在のパス文字列である.attr("path")現在の変換文字列を指定する必要があり.transform()ます。

もう 1 つの簡単な方法は、transformメソッドを使用し続けることですが、«...» 文字列部分を使用して変換を追加し、前の変換文字列を再利用する必要があることを Raphael に伝えることです。

于 2013-04-06T22:35:18.147 に答える