2011-05-19 20 views
6

İşte benim sorumHTML5 CANVAS beraberlik görüntüsü

ben tür sx ve sy aşağıda fonksiyonunda

context.drawImage (Görüntü, sx, sy, sw, sh, dx için anlamak değil , dy, dw, dh);

Gerçekten kastettiğim şey, sx ve sy değerlerini değiştirip dx ve dy değerinizi sabit bir değere ayarlarsak dx = 0 ve dy = 0 diyelim, gerçekten de görüntüümüzü farklı kılacak mı? sx = 300 ve sy = 300 ayarlandığında tuval üzerinde sx = 0 ve sy = 0 ile karşılaştırıldığında? Yani hedef görüntü hala dx = dy = 0 konumunda ve sx ve sy'i farklı değerlere ayarlıyoruz, değil mi? Bunun aptalca bir soru olduğunu biliyorum, ama cevabı bilmem gerek, teşekkürler!

cevap

16

(sx, sy), hedefe doğru çizilecek olan kaynak dikdörtgenin ( içinde bulunan ) sol üst köşesidir. Aşağıdaki şemada bir göz atın:

enter image description here

[Reference]

sx = 0, sy = 0 sx = 300, sy farklıdır = 300 farklı kaynak dikdörtgenler bakın çünkü.

+0

Farklı kaynak dikdörtgenlerinin görüntü üzerindeki etkisi ne olacak? Resmin tuval üzerindeki konumu değişecek mi? –

+0

Farklı kaynak dikdörtgenleriniz varsa, kaynak resmin farklı bölümlerini çizeceksiniz. Kaynak resmin tamamını çizmek isterseniz, 0,0'dan başlamak zorundasınız. – dogbane

+0

evet ama neden sx ve sy'yi farklı bir yere yerleştirmemiz gerekiyor, aynı görüntüyü dx = 0 ve dy = 0 konumunda değil miyiz? Yani, sx ve sy değişmiş olsa da hedef görüntü hala aynı olacak demek? –

0
var img = new Image(); 
img.onload = function init_sketch() { 
img.src = 'http://cssdeck.com/uploads/media/items/3/3yiC6Yq.jpg'; 
context.drawImage(img, 0, 0); 
} 
İlgili konular