Mobile app version of vmapp.org
Login or Join
Eichhorn212

: How can I create a black to transparent gradient without banding? What I need: A 3000px by 1340px PNG that vertically graduates from 100% opacity black to 0% opacity black. My problem: Banding

@Eichhorn212

Posted in: #Gradient

What I need:

A 3000px by 1340px PNG that vertically graduates from 100% opacity black to 0% opacity black.

My problem:

Banding occurs.

Example:



What I've tried:

Virtually every solution to be found online. I've tried adding noise, blurs, installing actions that are supposed to work but don't, changing the the color and dither settings, converting from 16 bit to 8 bit and NONE of these solutions work for me.

Note: I'm already aware of this question: Is it really impossible to have gradient without banding?

My question:

Would anyone be kind enough to confirm that they can actually create what I've described and tell me how to achieve it?

Even a link to a non-Photoshop solution will work e.g. an online gradient generator, Illustrator, Fireworks.

10.02% popularity Vote Up Vote Down


Login to follow query

More posts by @Eichhorn212

2 Comments

Sorted by latest first Latest Oldest Best

 

@Barnes313

On theoretic level you will never be able to achieve perfectly smooth gradients. This is because the numeric color levels must use float numbers to calculate the gradient. As you need to convert floats to integer value (no decimal) there are introduced rounding errors which cause banding.

The technique to overcome rounding error has always been to introduce noise. Noise is what is the basis for dithering where you put noise in the lower value section where the rounding error present itself, to break up the uniformity of the rounding error in that area and therefor make it look more smooth.

There are different implementations of these techniques, some good, some not so good. I remember from the old days on the Amiga we used the algorithm developed by Floyd-Steinberg. It worked pretty well back then, and still do.

Even if you do get a "good looking" gradient inside your computer, there are other factors that will determine the final result such as the quality of your graphics card as well as your monitor. Modern days cards and monitors are in the same digital domain and can only work with integer values (ie. why 10-bits, 12-bits cards and screens where introduced so the rounding error is moved to an even lower value in the range these bit-resolutions represents) and suffer from rounding errors too (I'm not referring to the actual physical pixel itself as it is analogue, but the hardware and software drivers behind it).

There is not much you can do about that besides from introducing more noise in the graphics to even out transitions. If a commercial context you would need to use high quality card and monitor to be on the safe side (ie. from segments such as card supplier as f.ex. Matrox or monitor manufacturer Eizo works in).

(That being said, you can eliminate one step in the chain by hooking up a good old fashion CRT monitor that uses analogue signal to see if your monitor is limiting the representation or if your gfx card is - if you have an analogue output on your card that is. This not an accurate test of course, but gives you a pointer)

10% popularity Vote Up Vote Down


 

@Phylliss782

Gradient dithering will help break up banding where the gradient covers too large a spectrum for the available dynamic range. Photoshop can do this for you.

10% popularity Vote Up Vote Down


Back to top | Use Dark Theme