Method to make a set of pale colors

If I have an image that has string colors and uses the full gamut of colors from black to white, is the a recommended method of turning that into a paler aimge without losing the image?

eg if I just add 100 to the r,g,b values of each pixel, lots of them would end up as white.
I need an effect that looks like I laid a white sheet of plastic on top.
Any idea of the fastest way to do that?

Add white, meaning the same value to each channel. For instance 50 on R, 50 on V, 50 on B. That will produce a whitish effect.

Thanks Michel.
That approach had occurred to me but its a rather blunt tool.
All the colors which are light disappear into white

I was wondering if there was a way to keep variation but lower the resolution somehow

Current thoughts:
If current colors go from 0 to 255, maybe divide by 2 and add 128 …
So all the numbers lie in a range of 128 to 255

That would be quite slow pixel by pixel, but i imagine thats the kind of effect I need.
Wonder if MBS has something

What are “string colors”? I’m interested in what you’re doing. Trying to affect each pixel? You already have the source image, does not drawing a white rectangle on top with an alpha value accomplish what you need? Curious!


you meant as in the bottom of the image (url below) ?

(only the URL, not he actual image)

I do not found a better version of that cover. This is one cover from many CDs published by Polydor years ago. I get it from (The Beatles featuring Tony Sheridan / Hamburg 1961 Polydor First).

Like this:

instead of this:

I’ll experiment with the alpha white image overlay

Actually, this does it
In paint event:

g.drawpicture bigleaves,0,0,g.width,g.height

g.forecolor = &cFFFFFF50
g.fillrect 0,0,g.width,g.height

Because I needed a palette of colors, rather than a whole image, this is what I applied to the palette entries.
(I use the palette then later draw over the top in black, which I need to stay black)

This keeps a visible distinction between the colors, but elevates and compresses the color into the upper range of pale.

for x = ....
          Palettentry(x) = rgb(   Palettentry(x).Red /5 + 200,  Palettentry(x).green/5 + 200,   Palettentry(x).blue / 5 + 200)

And this works well.

Not saying that this would be wrong in any way, but keep in mind color is not only defined by RGB values. Another approach would therefore be to simply change the saturation value of a color while keeping hue and brightness (value).