Η μέθοδος drawImage() του HTML canvas
Ορισμός και χρήση
drawImage()
Ο τρόπος χρωματισμού εικόνας, πίνακα ή βίντεο στο canvas.
drawImage()
Η μέθοδος μπορεί επίσης να σχεδιάσει κάποια μέρη της εικόνας και/ή να αυξήσει ή να μειώσει το μέγεθος της εικόνας.
Παράδειγμα
Παράδειγμα 1
Η εικόνα που θα χρησιμοποιηθεί:

Εγγράφει την εικόνα στην κορυφή του canvas:
JavaScript:
var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); var img=document.getElementById("tulip"); ctx.drawImage(img,10,10);
Συμβουλή:Περισσότερες παραδείξεις παρέχονται στο κάτω μέρος της σελίδας.
Γλωσσική δομή
Γλωσσική δομή 1
Καθορίζει τη θέση της εικόνας στο canvas:
context.drawImage(img,x,y);
Γλωσσική δομή 2
Καθορίζει τη θέση της εικόνας στο canvas και ορίζει το πλάτος και το ύψος της εικόνας:
context.drawImage(img,x,y,width,height);
Γλωσσική δομή 3
Αποκόπτει την εικόνα και καθορίζει τη θέση του κομμένου μέρους στο canvas:
context.drawImage(img,sx,sy,swidth,sheight,x,y,width,height);
Τιμή παράμετρου
Παράμετροι | Περιγραφή |
---|---|
img | Καθορίζει την εικόνα, το canvas ή το βίντεο που θα χρησιμοποιηθεί. |
sx | Προαιρετικό. Η θέση x για την αρχή της κοπής. |
sy | Προαιρετικό. Η θέση y για την αρχή της κοπής. |
swidth | Προαιρετικό. Το πλάτος της κομμένης εικόνας. |
sheight | Προαιρετικό. Το ύψος της κομμένης εικόνας. |
x | Η θέση x του εικόνας στο canvas. |
y | Η θέση y του εικόνας στο canvas. |
width | Προαιρετικό. Το πλάτος της εικόνας που θα χρησιμοποιηθεί. (Εκτενεί ή συρρικνώνει την εικόνα) |
height | Προαιρετικό. Το ύψος της εικόνας που θα χρησιμοποιηθεί. (Εκτενεί ή συρρικνώνει την εικόνα) |
Περισσότερες παραδείξεις
Παράδειγμα 2
Καθορίζει τη θέση της εικόνας στο canvas και ορίζει το πλάτος και το ύψος της εικόνας:
JavaScript:
var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); var img=document.getElementById("tulip"); ctx.drawImage(img,10,10,240,160);
Παράδειγμα 3
Αποκόπτε την εικόνα και καθορίζει τη θέση του κομμένου μέρους στο canvas:
JavaScript:
var c=document.getElementById("myCanvas"); var ctx=c.getContext("2d"); var img=document.getElementById("scream"); ctx.drawImage(img,90,130,90,80,20,20,90,80);
Παράδειγμα 4
Το βίντεο που θα χρησιμοποιηθεί (πατήστε το κουμπί play για να ξεκινήσετε την παράσταση):
Canvas:
JavaScript (κάθε 20 χιλιοστόλιτρο, το κώδικας θα σχεδιάσει το τρέχον кадρό του βίντεο):
var v=document.getElementById("video1"); var c=document.getElementById("myCanvas"); ctx=c.getContext('2d'); v.addEventListener('play',function() {var i=window.setInterval(function()} {ctx.drawImage(v,0,0,270,135)},20);},false); v.addEventListener('pause',function() {window.clearInterval(i);},false); v.addEventListener('ended',function() {clearInterval(i);},false);
Υποστήριξη περιηγητών
Τα αριθμήματα στη τаблицή σημειώνουν την έκδοση του πρώτου προγράμματος που υποστηρίζει αυτήν την ιδιότητα.
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
4.0 | 9.0 | 3.6 | 4.0 | 10.1 |
Σημείωση:O Internet Explorer 8 και οι προηγούμενες εκδόσεις δεν υποστηρίζουν το στοιχείο <canvas>.