Ahoy StackOverflow!IE7 excanvas drawImageの回避策ですか?
私はIE7のみでcanvasに何かを描画した後にdrawImage()を呼び出すと、excanvasはイメージを目的のx、y座標に描画しません。私はexcanvasプロジェクトページ/ Googleグループを見て、drawImage()関数に関する既知の問題があることを発見しました。 (例:http://code.google.com/p/explorercanvas/issues/detail?id=104&q=IE7)
ここで示唆したように、私は、単位行列を復元しようとしている:Excanvas vml positioning issue、効果がなかったたように見えるけれども。
添付この問題を実証する簡単なHTML文書である:
<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript" src="excanvas.js"></script>
<script type="text/javascript">
window.onload = function(){
var icon, ctx;
icon = new Image();
icon.width = "20";
icon.height = "20";
icon.src = "http://www.shangalulu.com/resources/images/icons/small/30.png";
icon.onload = function(){
var ctx;
ctx = document.getElementById('the_canvas').getContext('2d');
ctx.beginPath();
ctx.moveTo(0,0);
ctx.lineTo(500,0);
ctx.lineTo(500,500);
ctx.lineTo(0,500);
ctx.lineTo(0,0);
ctx.moveTo(200,200);
ctx.lineTo(300,200);
ctx.lineTo(300,300);
ctx.lineTo(200,300);
ctx.lineTo(200,200);
ctx.moveTo(0,0);
ctx.lineTo(500,500);
ctx.moveTo(0,500);
ctx.lineTo(500,0);
ctx.stroke();
ctx.drawImage(icon, 190, 190, 20, 20);
ctx.drawImage(icon, 240, 240, 20, 20);
ctx.drawImage(icon, 290, 290, 20, 20);
return;
}
}
</script>
</head>
<body>
<canvas id="the_canvas" width="500" height="500"></canvas>
</body>
</html>
あなたがこれを実行するためにexcanvasライブラリが必要な場合、あなたはここからそれをつかむことができます:http://code.google.com/p/explorercanvas/
上記のスクリプトは、次の操作を行う必要があります:それはキャンバスの外側のエッジの輪郭を描画する必要があり
- (あなたがそれを見ることができる)
- キャンバスの中央に100x100の長方形を描画する必要があります。
- キャンバスの中心を通る2本の線を描く必要があります。
- 内側のボックスの左上隅に1つ、中央に1つ、内側のボックスの右下に1つずつ、3つの画像を描画する必要があります。
私が知りたいことは:この問題の既知のパッチ/回避策はありますか?私もその1つの上で私の髪を引っ張ってきた
ありがとうございました!残念ながら、私たちはすばやく移動して、サーバーにデータを投げただけでした。もし私が余裕を持っていれば、私はあなたのコードを試してみるでしょう。 もう一度、質問に答える時間をとってくれてありがとう! :D – Axle