teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

2019/11/10 07:01

投稿

Qoo
Qoo

スコア1249

title CHANGED
File without changes
body CHANGED
@@ -25,10 +25,5 @@
25
25
  ```
26
26
 
27
27
  0度のとき
28
- ![0度のとき](3fe9aed08b7faa645a5910f01c6f2823.jpeg)
29
-
30
28
  −10度のとき
31
- ![−10度のとき](1e2da70bba3d5a22ca580b9c29003705.jpeg)
32
-
33
- +10度のとき
29
+ +10度のとき
34
- ![+10度のとき](2453ca0c28cda2db38a91b6bf1ee9c0b.jpeg)

1

試行錯誤している中で質問を変更しました

2019/11/10 07:01

投稿

Qoo
Qoo

スコア1249

title CHANGED
File without changes
body CHANGED
@@ -1,15 +1,34 @@
1
- drawImageを使用して画像を重ねて合成しているのでが、
1
+ drawImageを使用して画像を回転ようとしてい
2
- imageを回転させて重ねようとた場合、どのようにすのが良でしょうか。
2
+ アドバイスいただいたコードで一応回転ていっぽことはわりました
3
3
 
4
+ 回転させた後、位置を調整すればうまく表示できるのだろうと思うのですが、
5
+ 基準点がどこにあるのか理解できずどう調整していいのかアドバイスいただきたく。
6
+
4
7
  ```JS
5
- //
8
+
6
- var ctx = canvas[0].getContext('2d');
9
+ const image_chara = document.querySelector('#pic_chara');
10
+ let image_chara_ratio = image_chara.width / image_chara.height;
11
+ dw = width / 4;
12
+ dh = width / 4 / image_chara_ratio;
13
+
14
+ ctx.save();
15
+ ctx.rotate(10 * Math.PI / 180);
7
16
  ctx.drawImage(
8
- image,
17
+ image_chara,
9
- 0, 0,
18
+ 0, 0,
10
- image.width, image.height,
19
+ image_chara.width, image_chara.height,
11
- 0, height - dh,
20
+ width - dw, height - dh,
12
- dw, dh
21
+ dw, dh
13
- );
22
+ );
23
+ ctx.restore();
14
24
 
15
- ```
25
+ ```
26
+
27
+ 0度のとき
28
+ ![0度のとき](3fe9aed08b7faa645a5910f01c6f2823.jpeg)
29
+
30
+ −10度のとき
31
+ ![−10度のとき](1e2da70bba3d5a22ca580b9c29003705.jpeg)
32
+
33
+ +10度のとき
34
+ ![+10度のとき](2453ca0c28cda2db38a91b6bf1ee9c0b.jpeg)