2016-11-17 80 views
0

我有這個圖片Image Link,我希望把這種形象到畫布 但結果高度和寬度都沒有準確 這是我的腳本的JavaScript的drawImage高度不正確

var canvas = document.getElementById('canvas'); 
var ctx = canvas.getContext('2d'); 
var img = document.createElement('IMG'); 
img.src = "https://s13.postimg.org/rmk2wq6uf/depan.jpg"; 
ctx.drawImage(img, 0, 0); 

jsfiddle link 請幫助

+0

d o您是否希望圖像匹配畫布大小或畫布大小匹配與當前圖像大小? – Saajan

+1

這是因爲畫布沒有指定寬度和高度。畫布正在使用默認值。 – abhishekkannojia

+0

我希望畫布大小與原始圖像匹配 –

回答

0

您可以使用naturalWidthnaturalHeight設置canvas的高度和寬度:

https://jsfiddle.net/ryanpcmcquen/wbxnkuq4/

var canvas = document.getElementById('canvas'); 
 
var ctx = canvas.getContext('2d'); 
 
var img = document.createElement('img'); 
 
img.src = "https://s13.postimg.org/rmk2wq6uf/depan.jpg"; 
 
canvas.width = img.naturalWidth; 
 
canvas.height = img.naturalHeight; 
 
ctx.drawImage(img, 0, 0);
<canvas id="canvas"></canvas>

MDN: https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement

+0

謝謝,這是有用的 –