1

変換された画像をキャンバスにレンダリングする際の問題:

base_image.src = temp.src;

var matrix = temp.style.msTransform;
matrix = matrix.replace("matrix(", "");
matrix = matrix.replace(")", "");
var array = matrix.split(",");
base_image.onload = function () {
   canvasCtx.save();
   canvasCtx.setTransform(array[0], array[1], array[2], array[3], array[4], array[5]);
   canvasCtx.drawImage(base_image, 0, 0);
   canvasCtx.restore();
} 

問題は、画像を回転またはスケーリングしたときにのみ発生します..回転またはスケーリングされていない場合、キャンバス上の画像のように正確な位置に転送されます..しかし、回転またはスケーリングすると、正しい位置にありません. 常に右/左に数ピクセル、上/下に sime ピクセル。常にシフトし、どれだけスケーリングまたは回転したかによって異なります。修正方法は?ありがとう、アラン。

4

0 に答える 0