回答編集履歴
1
追記
answer
CHANGED
@@ -1,4 +1,42 @@
|
|
1
1
|
ググって調べただけですが、以下の記事が役に立ちませんか?
|
2
2
|
|
3
3
|
Canvas に回転した画像を表示するサンプル001
|
4
|
-
[https://misc.laboradian.com/html5/rotate-image-canvas-sample/001/](https://misc.laboradian.com/html5/rotate-image-canvas-sample/001/)
|
4
|
+
[https://misc.laboradian.com/html5/rotate-image-canvas-sample/001/](https://misc.laboradian.com/html5/rotate-image-canvas-sample/001/)
|
5
|
+
|
6
|
+
**【追記】**
|
7
|
+
|
8
|
+
下のコメント欄に「そういうことはないと思うのですが。後で検証して結果を回答欄に書いておきます」と述べましたが、それを以下に書きます。
|
9
|
+
|
10
|
+
以下の記事の png 画像とコードを流用し、それに少し手を加えて、画像を 5 度ずつ回転させてみました。
|
11
|
+
|
12
|
+
Canvas に複数の画像を順番通り描画
|
13
|
+
[http://surferonwww.info/BlogEngine/post/2019/10/24/draw-multiple-images-on-canvas-in-order.aspx](http://surferonwww.info/BlogEngine/post/2019/10/24/draw-multiple-images-on-canvas-in-order.aspx)
|
14
|
+
|
15
|
+
手を加えたところは JavaScript のコードの、
|
16
|
+
|
17
|
+
```
|
18
|
+
for (let j = 0; j < images.length; j++)
|
19
|
+
{
|
20
|
+
context.drawImage(images[j], j * 20, j * 20);
|
21
|
+
}
|
22
|
+
```
|
23
|
+
の部分を以下のようにし、
|
24
|
+
|
25
|
+
```
|
26
|
+
for (let j = 0; j < images.length; j++)
|
27
|
+
{
|
28
|
+
context.save();
|
29
|
+
context.rotate(j * 5 * Math.PI / 180);
|
30
|
+
context.drawImage(images[j], j * 20, j * 20);
|
31
|
+
context.restore();
|
32
|
+
}
|
33
|
+
```
|
34
|
+
canvas の width, height を画像が収まるよう、
|
35
|
+
|
36
|
+
```
|
37
|
+
<canvas id="mycanvas" width="250" height="250"></canvas>
|
38
|
+
```
|
39
|
+
|
40
|
+
と少し大きくしただけです。実行結果は以下のようになります。
|
41
|
+
|
42
|
+

|