最近、キャンバスよりも大きい画像をトリミングせずにキャンバスに描画し、いくつかの変更を行った後、画像を元のサイズに保存する方法について質問しました。解決策は、キャンバスのインラインheight
とwidth
属性を画像よりも大きく設定し、cssheight
とwidth
プロパティを使用してレイアウトに合わせてキャンバスのスタイルを設定することです。
たとえば、私の画像のサイズが400ピクセルから2000ピクセルの範囲であると仮定します。しかし、私はキャンバスをそれほど大きくしたくありませんし、画像もトリミングしたくありません(toDataURL
キャンバス上にあるものと一緒に画像を保存すると、保存されるものになるためです)。これが機能するものです:
//style
#mycanvas{
width: 400px;
height: 400px;
}
<canvas id="mycanvas" width="2000" height="2000" />
これはうまく機能し、私の画像はうまく出てきます。しかし、この動作はバグがあり、将来変更/修正される可能性がありますか?このソリューションを当面のタスクに使用することを計画しています。
何かガイダンスはありますか?