I have a grey scale image, with transparency. How can I convert this to one solid specific color, and preserve its edges/transparency?

As an example of what I'm trying to achieve:

  • Converting the picture to RGB (Image->Mode) then using a Hue/Sturation layer with "Colorize" checked should do it. Can you try that and edit your question if it doesn't work? (There are other ways. In Photoshop, there are always other ways.) Dec 8 '14 at 14:55
  • I need to set the solid colour exactly (with a hex value). I cant just get it close enough by eye by tweaking these levels.
    – Evanss
    Dec 8 '14 at 15:07
  • This is very hard to answer when you want to use an exact value with transparency. Is it a solid black irregular shape? Or are there different shades of grey? If there's different shades of grey than which part needs to be the exact hex value - the black? The white? The midtones?
    – Ryan
    Dec 8 '14 at 15:20
  • The image has different colours and variable transparency. I need to make a solid colour out of any part of the original image that has a solid colour. I want the semi transparent parts to be ignored for this.
    – Evanss
    Dec 8 '14 at 15:21
  • 1
    Example images of what you're starting with and the result you want to achieve are always helpful for questions like these
    – JohnB
    Dec 8 '14 at 15:50

If I understand your question correctly:

First, make sure that you are in RGB mode. (image > mode)

Right-click the layer you want to convert to a solid color, and click blending options.

In this window, go to the color overlay tab on the left, and in the right pane choose a color.

Looks like this. (image from here)

enter image description here

Is that what you were looking for?


Select All and Copy (cmd/ctrl+A, then cmd/ctrl+C) and then create a new fill layer (Layer > New Fill Layer > Solid Color). Click ok on the first dialogue box and then select a color. Now your layer panel should look like this:

enter image description here

Now alt-Click on the Layer Mask of your fill layer (the white box next to the layer thumbnail). Now you can directly edit the layer mask: Just Paste the b/w-image you copied before in the now empty, white workspace (cmd/ctrl+V) and invert the “colors” by pressing cmd/ctrl+I.

enter image description here

You can leave the layer mask mode simply by clicking anywhere in the layers panel. Now you just have to delete your original black and white layer and you’re done.

enter image description here

  • Thanks for the detailed answer however I need a solid fill eg something like this: clker.com/cliparts/m/i/f/x/A/t/fish-outline-black-filled.svg
    – Evanss
    Dec 9 '14 at 8:31
  • 1
    @jdln Oh sorry, I misunderstood. You should add this image to your question, so other people who have the same problem, immediately know if they are looking at the right question.
    – mnxd
    Dec 9 '14 at 14:47

Looks like you want to get that nice, silhouette effect. How about using color overlays since parts of the image already has transparency?

Layer> layer style> color overlay


My way of dealing with this (i have to do it a lot actually), is i copy the layer i want to convert into a new temporary grayscale document, then convert it to a monotone using the specific hex number. then plop it back into the orig file, and just hide the orig layer (incase i need to go back for some reason, or change the color). Maybe it seems a bit weird of a way to do it, i just like treating it like im using a photocopier as opposed to all that layer jockeying.. but to each their own.


If you want the photo to appear as dark on a colored background, you can apply the same steps, but use black as overlay color. Then add a new color fill layer beneath it with the desired background color.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.