Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

121
Vistas
imageSmoothingEnabled a veces no funciona al dibujar lienzo sobre lienzo

Noto una extraña interacción entre clearRect, fillRect y drawImage. Se explica mejor con una demostración: https://jsfiddle.net/tf950zpd/13/ Código:

 const c1 = document.getElementById("a").getContext("2d"); const c2 = document.getElementById("b").getContext("2d"); c1.imageSmoothingEnabled = false; c2.imageSmoothingEnabled = false; c1.fillStyle = "white"; c1.fillRect(0,0,2,2); c1.fillStyle = "black"; c1.fillRect(0,0,1,1); c1.fillRect(1,1,1,1); document.getElementById("b1").onclick = function() { c1.fillRect(0,0,1,1); } document.getElementById("b2").onclick = function() { c2.clearRect(0,0,100,100); c2.drawImage(c1.canvas, 0,0,2,2,0,0,100,100); }

HTML:

 <div id="banner-message"> <button id="b1"> draw A </button> <button id="b2"> draw B </button> <canvas id="a" width="2" height="2"></canvas> <canvas id="b" width="100" height="100"></canvas> </div>

La expectativa es que el suavizado siempre esté deshabilitado cuando hago clic en "dibujar B".

Si hace clic en dibujar B dos veces, el suavizado está deshabilitado por primera vez, pero el suavizado está habilitado por segunda vez. Si hace clic en "dibujar A" y luego en "dibujar B", funciona nuevamente por una vez, pero aún tiene habilitado el suavizado por segunda vez.

Mi pregunta es por qué no funciona como se esperaba y cómo lo soluciono.

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda