Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

217
Views
¿Cómo puedo alternar entre un color de fondo y una imagen de fondo en el lienzo?

Tengo este programa donde puedo agregar luces a mi escena (almacenadas en una matriz de lights ). Cuando inicio el programa por primera vez, quiero que todo esté en negro ya que comienzo con mi matriz vacía. Pero cuando hay luz, quiero cambiar el fondo a una imagen, y cuando no hay luz, quiero que todo vuelva a ser negro. Estoy tratando de llamar a esto en mi función de renderizado:

 if(lights.length == 0) { canvas.style.background = "#000000 none"; } else { canvas.style.background = "transparent url('nebula.png')"; }

Pero no está funcionando como pretendía. ¿Alguien sabe cómo lograr esto?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

no use propiedades de fondo en el lienzo.
Use context.fillRect() para establecer el color de fondo
Use context.fillImage() para establecer la imagen de fondo
Referencia:
https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/fillRect <= fillRect()
https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/drawImage <= imagen de relleno()

Editar:
Ejemplo:

 const cvs = document.getElementById(' /* your canvas */ ') const context = cvs.getContext('2d') // context is the CanvasRenderingContext2D // use the two commands above to make background.
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!