質問編集履歴
1
アドバイスいただきましたhtml2canvasを用いてキャプチャ取得を試みるようコードを書き換えました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -10,42 +10,46 @@
|
|
10
10
|
### 該当のソースコード
|
11
11
|
|
12
12
|
```html
|
13
|
-
<
|
13
|
+
<div id="target">
|
14
|
-
<input checked type="checkbox" id="A"><label for="A">A</label><br>
|
15
|
-
<input checked type="checkbox" id="B"><label for="B">B</label>
|
16
14
|
<table class="imageTable">
|
17
|
-
<tr
|
15
|
+
<tr>
|
18
|
-
|
16
|
+
<td><img src="https://placehold.jp/150x150.png?text=A1"></td>
|
19
|
-
|
17
|
+
<td><img src="https://placehold.jp/150x150.png?text=A2"></td>
|
20
|
-
|
18
|
+
<td><img src="https://placehold.jp/150x150.png?text=A3"></td>
|
21
|
-
|
19
|
+
</tr>
|
22
|
-
<tr id="trB">
|
23
|
-
<td><img src="https://placehold.jp/150x150.png?text=B1"></td>
|
24
|
-
<td><img src="https://placehold.jp/150x150.png?text=B2"></td>
|
25
|
-
<td><img src="https://placehold.jp/150x150.png?text=B3"></td>
|
26
|
-
</tr>
|
27
20
|
</table>
|
28
|
-
</
|
21
|
+
</div>
|
22
|
+
<hr>
|
23
|
+
<h3>target範囲内を画像化<h3>
|
24
|
+
<img src="" id="result" />
|
25
|
+
<hr>
|
26
|
+
|
27
|
+
<a href="" id="ss" download="target.png">出力</a>
|
28
|
+
|
29
|
+
<script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/0.4.1/html2canvas.js"></script>
|
29
|
-
<
|
30
|
+
<script type="text/javascript" src="test.js"></script>
|
30
31
|
```
|
31
|
-
```
|
32
|
+
```javascript
|
32
|
-
.
|
33
|
+
//test.js
|
34
|
+
//ロードされた際の処理として実施:
|
33
|
-
|
35
|
+
window.onload = function(){
|
34
|
-
}
|
35
|
-
#A:checked ~ .imageTable #trA,
|
36
|
-
#B:checked ~ .imageTable #trB{
|
37
|
-
display: block;
|
38
|
-
}
|
39
|
-
```
|
40
36
|
|
41
|
-
|
37
|
+
//HTML内に画像を表示
|
38
|
+
html2canvas(document.getElementById("target"),{
|
39
|
+
onrendered: function(canvas){
|
40
|
+
//imgタグのsrcの中に、html2canvasがレンダリングした画像を指定する。
|
41
|
+
var imgData = canvas.toDataURL();
|
42
|
+
document.getElementById("result").src = imgData;
|
43
|
+
}
|
44
|
+
});
|
42
45
|
|
43
|
-
こちらでアドバイスいただき、上記のように
|
44
|
-
|
46
|
+
//ボタンを押下した際にダウンロードする画像を作る
|
45
|
-
今回取得したい表全体のキャプチャは、
|
46
|
-
オンオフを指定した後のものとなります。
|
47
|
-
|
48
|
-
|
47
|
+
html2canvas(document.body,{
|
49
|
-
知識不足て大変申し訳ございませんが、
|
50
|
-
|
48
|
+
onrendered: function(canvas){
|
49
|
+
//aタグのhrefにキャプチャ画像のURLを設定
|
51
|
-
|
50
|
+
var imgData = canvas.toDataURL();
|
51
|
+
document.getElementById("ss").href = imgData;
|
52
|
+
}
|
53
|
+
});
|
54
|
+
}
|
55
|
+
```
|