Giter Site home page Giter Site logo

Comments (7)

lovell avatar lovell commented on June 2, 2024

https://sharp.pixelplumbing.com/api-output#png

[options.quality] use the lowest number of colours needed to achieve given quality, sets palette to true

[options.palette] quantise to a palette-based image with alpha transparency support

When quality is set, palette is also selected and therefore you have chosen to use a lossy, quantised output.

from sharp.

chescos avatar chescos commented on June 2, 2024

Ah, I see. I understand that it's a lossy output, but the output from my example is still very unexpected for me. The background color is a single color, and it just adds a completely different color but just in some areas. Is this the desired/expected functionality?

from sharp.

chescos avatar chescos commented on June 2, 2024

Is there any way to prevent this from happening while still setting a quality?

from sharp.

lovell avatar lovell commented on June 2, 2024

The prebuilt binaries provided by sharp include the BSD-licenced libimagequant v2.4.1 for generating and mapping image palettes.

You may have some luck building your own libvips from source compiled with support for an alternative quantisation library such as a more recent GPL-licenced libimagequant or quantizr, but this is left as an exercise for the reader.

from sharp.

chescos avatar chescos commented on June 2, 2024

Thanks! I ended up setting dither to 0.0, which seems to fix the issue in all instances I tested. To your knowledge, should this reliably fix the issue?

from sharp.

lovell avatar lovell commented on June 2, 2024

Ah yes, this does look like dithering gone a bit wrong, so altering the dither level until you find a value that works for the type of input you'll be processing is definitely a good idea.

from sharp.

lovell avatar lovell commented on June 2, 2024

I hope this information helped. Please feel free to re-open with more details if further assistance is required.

from sharp.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.