Is there a way (ideally using Sketch) to do a single color overlay over an icon that has multiple colors – while preserving the original icon's different shades?

I'm trying to turn the blue folder icon into different colors (green, purple, etc.), but I'm trying to do it more elegantly than having to go through and recolor each shape individually. I'd like to be able to change the color of the folder and have it respect the opacity of the icon underneath.

Should I make the original blue icon into a transparent gray? Then somehow mask the overlay color? I tried that below in Sketch and couldn't get it to work.

enter image description here

enter image description here

  • What format is your original icon in? (For example, is it an editable vector, or is it a bitmap?) Jan 30, 2017 at 18:55

3 Answers 3


Try this:

  • input your blue version as a layer
  • delete the white background - you are not going to want it get colored
  • make a selection that covers your shape area (it's the inverse for that which was used when white background was deleted)
  • paint, floodfill,lay a gradient or somehing else into a new layer; do not exeed the selection border
  • experiment different overlay blending modes and opacity values
  • add another color affecting layer

Actually I do not have Sketch, but I did that in Photoshop, See an example:

enter image description here

Here the overlay is a gradient that resulted this nearly metallic glow. The contrast is boosted by adding luminosity curve atop and making a typical midtone boost S. The gradient in layer 2 has got layer blending mode = exclusion for strong and virtually beforehand unthinkable effect.


I don't know about sketch but in Photoshop you could import the picture and change the colour using colour balance or hue and saturation adjustments. Alternatively you could create a layer above the imported picture/layer and fill the block with a colour and set the blend mode to colour.


The method I found to do this on Sketch with a vector object is (pardon the random shape, I wanted to make sure it works with gradients / borders / etc):

Original image

  1. Duplicate your object and convert all outlines to stroke. Union and flatten all the elements in this new group until you have just one filled shape covering the whole original object.

duplicated and flattened

  1. Change the new element's Blending Mode to Color

final colored object

  1. Change the new element's color to whatever color you want. Nothing stops you from using gradients as well...

also with gradients!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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