3

I have a PNG layer which has a drop shadow applied in Photoshop.

I'd like to create another layer of white color which would cover all non-transparent pixels on the canvas (i.e. the original PNG + the shadow).

Is there a way to conveniently do this in CS5(12)?

Here is a screenshot of the original image (on the left) and the best approximation I could get it to (on the right). However, the problem is that the shadow is not solid white as it should be (this is needed for the resulting image to act as a mask in mobile gaming framework).

Example: white non-solid shadow

2
  • 2
    Photoshop 5 or CS5(12)? There is a world of difference.
    – Scott
    Commented Jan 15, 2014 at 18:29
  • @Scott CS5 (v12).
    – Tetyana
    Commented Jan 16, 2014 at 6:49

4 Answers 4

1

If your copy of Photoshop is CS2 or later, copy the layer and convert it to a Smart Object. Then use Layer > Rasterize > Layer

If earlier than CS2, copy the original layer and place an empty new layer beneath it.

enter image description here

Then merge the copied layer into the empty layer to flatten it with Layers > Merge Down...

enter image description here

In either case, next lock the transparency on the returned layer and fill with white:

enter image description here

3
  • Thanks for the answer, this is as far as I could get in CS5. However, I'm trying to make the shadow as a solid white area (not just a white shadow).
    – Tetyana
    Commented Jan 16, 2014 at 7:08
  • @Tetyana - I believe this is the correct answer for your version of Photoshop. The selection is going to select the pixels including transparency associated with them. If you want it solid white change your Drop Shadow Size to 0 and Opacity to 100. Then follow the above steps.
    – Ryan
    Commented Jan 16, 2014 at 13:38
  • @Ryan As I understand, reducing the drop shadow size to 0 means the resulting image will be smaller than the original (which includes the shadow). I've found an alternative solution of selecting the original shadow and turning it solid white - will post in a separate comment.
    – Tetyana
    Commented Jan 17, 2014 at 8:37
1

If I understand correctly, which I'm not entirely sure I do (rarely am). You should be able to Control Click on the Layer and it will select all existing pixels. Then just create a new layer and fill with white.

Oh I see with your edit. You'll want to Right Click the layer and choose "Rasterize Layer Style"

Rasterize Layer Style

Then do the Control Click on layer to select all those pixels. (note I did this screenshot before the edit so my layer style isn't rasterized in the picture)

Control Click Layer

Create a new layer and fill with white.

3
  • Good answer, but I believe that this was introduced in CS6. Commented Jan 15, 2014 at 18:59
  • You could be correct
    – Ryan
    Commented Jan 15, 2014 at 19:06
  • @Ryan Thanks for the answer, I tried this in CS5, but it seems that when all pixels are selected, the stroke+shadow areas are excluded from the selection. I added a screenshot in my original post to demonstrate the issue a bit better. Any advice on how to make the shadow area solid white as well?
    – Tetyana
    Commented Jan 16, 2014 at 7:07
1
  • duplicate all layers
  • with all your copies still selected, merge those layers
  • done. Add a color overlay of white to the layer if you like.
0

Here is the solution I found works for my task:

  1. Duplicate the original image.
  2. With it being selected, go to Select / Color Range and in the "Select" drop-down choose "Shadows", OK. This will select the full drop shadow area applied to the original image.
  3. To turn it to solid white, go to Layer / New Fill Layer / Solid Color and apply white.
  4. In order for the inside areas of the original image to be white as well, duplicate the original layer again, apply white Color Overlay to it and merge it with the white shadow layer (from steps 1-3).

As a result, the resulting white layer occupies the identical area of the original image (incl. its shadow), and the shadow is solid white as needed.

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.