Heim > Web-Frontend > H5-Tutorial > Eine Sammlung grundlegender HTML5-Canvas-Zeichnungsbeispielcodes_html5-Tutorialfähigkeiten

Eine Sammlung grundlegender HTML5-Canvas-Zeichnungsbeispielcodes_html5-Tutorialfähigkeiten

WBOY
Freigeben: 2016-05-16 15:45:46
Original
1654 Leute haben es durchsucht

Grundlegendes Zeichnen

XML/HTML-CodeInhalt in die Zwischenablage kopieren
  1. var canvas = document.getElementById('canvas'); >
  2. if (canvas.getContext) {
  3. var
  4. context = canvas.getContext('2d'); // Linienbreite
  5. context.lineWidth
  6. = 4; // Pinselfarbe
  7. context.StrokeStyle
  8. = 'red'; // Füllfarbe
  9. context.fillStyle
  10. = "red"; // Linienkappentyp
  11.  
  12. context.lineCap
  13. = 'butt'; // rund, eckig  // Startpfad
  14. context.beginPath();
  15. // Ausgangspunkt
  16. context.moveTo(10,10);
  17. // Endpunkt
  18. context.lineTo(150,50);
  19. // Zeichnen
  20. context.Stroke();
  21.  
Rechteck



XML/HTML-Code

Inhalt in die Zwischenablage kopieren
var
  1. canvas = document.getElementById('canvas'); > if (canvas.getContext) {
  2. context.beginPath();
  3. context.strokeRect(10,10,70,40);
  4. // Eine andere Art von Rechteck
  5. context.rect(10,10.70,40);
  6. context.Stroke();
  7.  
  8. // ausgefülltes Rechteck
  9. context.beginPath();
  10. context.fillRect(10,10,70,40);
  11. // Eine andere Möglichkeit, ein durchgezogenes Rechteck zu sein
  12. context.beginPath();
  13. context.rect(10,10,70,40);
  14. context.fill();
  15.  
  16. Rund


XML/HTML-CodeInhalt in die Zwischenablage kopieren

  1. var canvas = document.getElementById('canvas'); >
  2. if (canvas.getContext) {
  3. context.beginPath();
  4. // Kreismittelpunktskoordinate x, Kreismittelpunktkoordinate Y, Bogenradius, Startwinkel, Endwinkel, ob gegen den Uhrzeigersinn
  5. // Der vierte und fünfte Parameter sind die einzugebenden Bogenmaße. Wenn Sie einen Winkel von 30 zeichnen, müssen Sie ihn in Bogenmaß 30 * Math.PI / 180
  6. umrechnen
  7. context.arc(100,100,70,0,130 * Math.PI / 180, true);
  8. context.Stroke();
  9. context.fill();
 

Abgerundete Ecken

XML/HTML-Code
Inhalt in die Zwischenablage kopieren
  1. var canvas = document.getElementById('canvas'); > if (canvas.getContext) {
  2. context.beginPath();
  3. context.moveTo(20,20);
  4. context.lineTo(70,20);
  5. // Bogen zeichnen p1.x p1.y p2.x, p2.y Bogenradius für einen Pfad,
  6. context.arcTo(120,30,120,70, 50);
  7. context.lineTo(120,120);
  8. context.Stroke();
  9.  
  10. // Leinwand-Zeichenfläche löschen
  11. context.beginPath();
  12. context.fillRect(10,10,200,100);
  13.  
  14. // Bereich löschen
  15. context.clearRect(30,30,50,50);
  16. Quadratische Bézier-Kurve

XML/HTML-CodeInhalt in die Zwischenablage kopieren

var
canvas
  1. = document.getElementById('canvas'); > if (canvas.getContext) { context.beginPath();
  2. context.moveTo(100,100);
  3. context.quadraticCurveTo(20,50,200,20);
  4. context.Stroke();
  5. Kubische Bézier-Kurve
XML/HTML-Code

Inhalt in die Zwischenablage kopieren

  1. var canvas = document.getElementById('canvas');   
  2. if (canvas.getContext) {   
  3.      context.moveTo(68,130);   
  4.      var cX1 = 20;   
  5.      var cY1 = 10;   
  6.      var cX2 = 268;   
  7.      var cY2 = 10;   
  8.      var endX = 268;   
  9.      var endY = 170;   
  10.      context.bezierCurveTo(cX1, cY1, cX2, cY2, endX, endY);   
  11.      context.Stroke();   
  12.         
  13.     // 利用clip指定绘图区域,指定绘图区域之后,只能在绘图区域中进行绘图擦欧总>
  14.     // 绘制圆形   
  15.     context.arc(100,100,40,0, 360 * Math.PI/ 180 , true);   
  16.     // 限制区域   
  17.     context.clip();   
  18.     // 开始尝试绘制其他   
  19.     context.beginPath();   
  20.     context.fillStyle = 'lightblue';   
  21.     // 结果矩形并没有显示出来   
  22.     context.fillRect(0,0,300,150);   
  23. }  

画板进阶使用

XML/HTML-Code复制内容到剪贴板
  1. var canvas = document.getElementById('canvas'); >
  2. if (canvas.getContext) {
  3. var
  4. context = canvas.getContext('2d'); /*
  5. * drawImage(image,dx,dy)
  6. * drawImage(image,dx,dy,dw,dh)
  7. * drawImage(image,sx,sy,sw,sh,dx,dy,dw,dh);
  8. * Bildzeichnungsobjekt
  9. * Koordinaten der DX-Dy-Leinwand
  10. * dw, dh gibt die Position des Bildes auf der Leinwand an, das gezeichnet werden soll
  11. * sw, sh stellt den zu zeichnenden Bildbereich dar
  12. * sx,sy Die Startposition der zu zeichnenden Zeichnung
  13. */
  14. var
  15. image
  16. =
  17. document.getElementById('img'); context.drawImage(image, 0, 0); var
  18. img
  19. =
  20. new
  21. Image();  img.src =
  22. 'images/1.jpg'
  23. img.onload =
  24. Funktion
  25. (){                                             // drawImage
  26. // Beginnen Sie mit dem Zeichnen bei 0,0-Koordinaten
  27. // context.drawImage(img,0,0);
  28. // Beginnend bei 0, 0, zeichnen Sie das gesamte Bild auf 100.100 Länge und Breite
  29. // context.drawImage(img, 0, 0, 100, 100);
  30. // Screenshot, 50,50 bis 100.100. Beginnen Sie mit dem Zeichnen bei 260.130 und platzieren Sie es im 100.100-Längen- und Breitenbereich
  31. // context.drawImage(img, 50, 50, 100,100, 260, 130, 100, 100);
  32.                                            
  33. // Verwenden Sie getImageData und putImageData, um Bilder zu zeichnen
  34. context.drawImage(img, 10, 10);
  35. // Pixeldaten von der Zeichenfläche abrufen
  36. // Startposition, Endposition
  37. var
  38. imgData
  39. =
  40. context
  41. .getImageData(50,50,100,100);
  42. // Zeichnen Sie die Daten zu den angegebenen Positionskoordinaten auf dem Zeichenbrett
  43. context.putImageData(imgData,10,260);
  44. // Einen Teil der Pixeldaten auf das Zeichenbrett zeichnen
  45. context.putImageData(imgData,200,260,50,50,100,100);
  46.                                            
  47. // createImageData Pixel erstellen
  48. var
  49. imgData
  50. =
  51. context.getImageData(50,50,200,200); // Erstellt ein leeres Objekt der angegebenen Größe
  52. var
  53. imgData01
  54. =
  55. context.createImageData(imgData);                                                  für (
  56. i
  57. =
  58. 0
  59. ; i < imgData01.width * imgData01.height * 4; i =4) { // Rote Pixel imgData01.data[i 0] = 255;
  60. imgData01.data[i 1] = 0;
  61. imgData01.data[i 2] = 0;
  62. imgData01.data[i 3] = 255;
  63.                                             
  64.                                                                     
  65. context.putImageData(imgData01, 10, 260);
  66. }  
  67. }
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage