Maison  >  Article  >  interface Web  >  Pourquoi mon image n’apparaît-elle pas sur le canevas HTML5, même si mon code semble correct ?

Pourquoi mon image n’apparaît-elle pas sur le canevas HTML5, même si mon code semble correct ?

DDD
DDDoriginal
2024-10-30 11:02:02300parcourir

Why is my image not appearing on the HTML5 canvas, even though my code seems correct?

Dessiner une image sur un canevas HTML5

Vous essayez d'ajouter une image à un canevas, mais cela reste insaisissable. Découvrons le secret derrière cette entreprise insaisissable.

Votre code semble solide, le problème doit donc résider ailleurs. L'étape critique qui vous manque est de vous assurer que l'image est chargée avant d'essayer de la dessiner.

Voici une solution révisée :

<code class="html"><canvas id="viewport"></canvas></code>
<code class="css">canvas#viewport { border: 1px solid white; width: 900px; }</code>
<code class="javascript">var canvas = document.getElementById('viewport'),
    context = canvas.getContext('2d');

function make_base() {
  var base_image = new Image();
  base_image.src = 'img/base.png';
  base_image.onload = function() {
    context.drawImage(base_image, 0, 0);
  };
}

make_base();</code>

En ajoutant un événement onload auditeur de l'image, vous retardez le dessin jusqu'à ce que l'image soit complètement chargée, garantissant sa présence sur la toile.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn