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

322
Views
Superposición con configuración de opacidad usando Sharp

Me gustaría tomar una imagen y componerla encima de otra imagen.

Esto funciona bien para ese propósito:

 overlayImg = await Sharp(sourceImage.Body) .composite([{ input: './lambdas/processNewImage/logos/white.png', gravity: 'southeast', }]) .toFormat('jpeg').toBuffer();

También tengo una variable: 1-100 que se supone que es la opacidad de la marca de agua. A veces lo quiero completamente sólido Al 100% de opacidad, otras al 70% y otras al 30%...etc. Debido a que necesito que esto sea variable, no puedo simplemente cambiar la opacidad de la imagen de la marca de agua.

No sé cómo cambiar la opacidad de una imagen compuesta en Sharp.

¿Alguien puede dar un ejemplo rápido?

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

0

Encontré esto en otro hilo donde se superpone con un búfer de píxeles sin procesar que contiene un valor de píxeles semitransparente en mosaico. 128 significa 50% de opacidad donde los valores válidos son 0-255. https://github.com/lovell/sharp/issues/554

 overlayImg = await Sharp(sourceImage.Body) .composite([ { input: './lambdas/processNewImage/logos/white.png', gravity: 'southeast', }, { input: Buffer.from([0,0,0,128]), raw: { width: 1, height: 1, channels: 4, }, tile: true, blend: 'dest-in', } ]) .toFormat('jpeg').toBuffer();
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!