私は現在、JavaScriptで2Dグラフィックライブラリを開発していますが、今は問題を変換する背景テクスチャを固執しています。JavaScriptキャンバスのfillStyleでイメージパターンを変換する方法は?
イメージ(CanvasPattern
)にキャンバスコンテキスト(CanvasRenderingContext2D
)の背景テクスチャ(プロパティfillStyle
)を設定したいとします。 fillStyle
に画像を割り当てるのは簡単です。 しかし、唯一の問題は、画像を実際に翻訳、縮尺変更、または歪曲することができないことです。
私はMDNを調べました。setTransform()
というプロトタイプがあります。 このAPIを使用すると、画像をSVGMatrix
で変換できますが、これは少し面倒です。 冗長<svg>
要素を作成するだけでなく、実験的なAPIでもあり、Google Chromeでは動作しません。
通常の方法では解決できません。 これを行うための 'ハックな'方法はありますか?
あなたは、パスが作成された後、最初にパスを作成し、別途変換を使用して、パスの塗りつぶしの独立を変換することができますが、パターンのために欲しいものに変換してから埋め設定..例えば 'ctx.beginPath(); ctx.rect(0、0、ctx.canvas.width、ctx.canvas.height); ctx、rotate(1); ctx.fillStyle = pattern; ctx.fill(); ' – Blindman67