回答編集履歴
3
クロスドメイン=>クロスオリジン
answer
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
=> image#onloadイベントでContext#drawImageを行ってください。
|
5
5
|
|
6
6
|
2, image#srcに設定しているimageは質問文ではサーバーの"photo.png"ですが、
|
7
|
-
もしもクロス
|
7
|
+
もしもクロスオリジンなイメージを設定したい時は注意してくださいなー。
|
8
8
|
参考
|
9
9
|
[CORS Enabled Image](https://developer.mozilla.org/ja/docs/Web/HTML/CORS_enabled_image)
|
10
10
|
|
2
onloadイベントとsrc要素がレースコンディションになっていたので、修正!
answer
CHANGED
@@ -29,7 +29,6 @@
|
|
29
29
|
var ctx = canvas.getContext('2d');
|
30
30
|
/* Imageオブジェクトを生成 */
|
31
31
|
var img = new Image();
|
32
|
-
img.src = "photo.png";
|
33
32
|
img.onload = function() {
|
34
33
|
ctx.drawImage(img, 0, 0, canvas.width, canvas.height);
|
35
34
|
ctx.fillStyle = "blue";
|
@@ -40,6 +39,7 @@
|
|
40
39
|
ctx.fillText("見出しテキスト", canvas.width/2, canvas.height);
|
41
40
|
fld1.value = canvas.toDataURL();
|
42
41
|
};
|
42
|
+
img.src = "photo.png";
|
43
43
|
}
|
44
44
|
draw();
|
45
45
|
send_form.action = "load.php";
|
1
用語を修正。
answer
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
> img.src = "photo.png";
|
2
2
|
|
3
|
-
1,image#src は非同期です。
|
3
|
+
1,image#src 要素は非同期です。
|
4
|
-
=> image#onload
|
4
|
+
=> image#onloadイベントでContext#drawImageを行ってください。
|
5
5
|
|
6
6
|
2, image#srcに設定しているimageは質問文ではサーバーの"photo.png"ですが、
|
7
|
-
もしもクロスドメイン
|
7
|
+
もしもクロスドメインイメージを設定したい時は注意してくださいなー。
|
8
8
|
参考
|
9
9
|
[CORS Enabled Image](https://developer.mozilla.org/ja/docs/Web/HTML/CORS_enabled_image)
|
10
10
|
|
@@ -13,7 +13,7 @@
|
|
13
13
|
<html lang="ja">
|
14
14
|
<head>
|
15
15
|
<meta charset="UTF-8">
|
16
|
-
<title>
|
16
|
+
<title></title>
|
17
17
|
</head>
|
18
18
|
<body onload="draw();">
|
19
19
|
<canvas id="canvas1" width="500" height="500"></canvas>
|