前提・実現したいこと
canvasで複数枚の透過pngを重ねて一枚の画像にしたいです(パーツごとに分かれているイメージ)
発生している問題
ボタンを押した地点で表示されるようにしているのですが、画像が透過されないです。ファイルはすべて透過で用意してある状態なのですが、うまく動作しません。一番最後に読み込まれた画像は一応表示されている状況です。
エラーなど
エラーは特に表立って吐いているわけではないので動作してはいるようです。
該当のソースコード
html
1<div id="canvas_box"> 2 <div id="c_container"> 3 <canvas id="canvas" width="960" height="540"> 4 <script> 5 var hair_src = "/static/img/hair/hair_1.png" 6 var eyebrow_src = "/static/img/eyebrow/eyebrow_1.png" 7 var eye_src = "/static/img/eye/eye_1.png" 8 var mouth_src = "/static/img/mouth/mouth_1.png" 9 var pose_src = "/static/img/pose/pose_1.png" 10 var effect_src = "/static/img/effect/effect_1.png" 11 var lettering_src = "/static/img/lettering/lettering_1.png" 12 var deco_src = "/static/img/deco/deco_1.png" 13 var skeleton_src = "/static/img/skeleton/skeleton.png" 14 15 function canvas() { 16 var container = document.getElementById("c_container"); 17 var canvas = document.getElementById("canvas"); 18 var context = canvas.getContext("2d"); 19 20 var source = [ 21 skeleton_src, 22 deco_src, 23 lettering_src, 24 effect_src, 25 pose_src, 26 mouth_src, 27 eye_src, 28 eyebrow_src, 29 hair_src 30 ]; 31 32 var images = []; 33 for (var i in source) { 34 images[i] = new Image(); 35 images[i].src = source[i]; 36 images[i].onload = function () { 37 context.drawImage(images[i], 0, 0); 38 } 39 } 40 } 41 </script> 42 </canvas> 43 </div>

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/08/16 08:52