Having trouble getting full opacity with Photoshop "Stroke Outline"?

Wed, 20/09/2017 - 10:29 -- James Oakley
Image Credit: shu Kandance

I hit an annoying trouble using the "Stroke Outline" feature of Photoshop Element 14. I then solved it. So I'll share it here for the benefit of others who encounter the same issue.

Stroke Outline

"Stroke outline" allows you to do something quite simple: You can colour in the outline of a selection. You can choose the colour, the thickness in pixels, and whether the outline will be inside the selected area, outside, or will centre on the border.

This is most useful if you hold down the Ctrl key and click on another layer. It will select all the pixels affected by that layer. Stroke Outline then lets you essentially trace round the other shape.

The Problem

I had a diagonal line that was 1 pixel thick. I tried to stroke its outline to create a thicker line, following the same course. You might think that's a strange way to draw a thicker line, but I had my reasons.

In the dialog window for the tool settings, I set the opacity of the outline to be 100%. That's to say, the pixels would have no transparency at all.

I'd chosen the colour to be black, but the resulting stroked outline looked grey. I dragged the newly created outline to move it over something else on the page, and I could see the other design through the outline. In short, it looked like I had something like 50% opacity, even though I'd asked for 100%

Diagnosing What Had Gone Wrong

I tried to create a consistent way to reproduce this, so that friends could help me see what I'd missed.

I changed the colour of the stroke outline, and you could see even more clearly. I set the outline to be a purple colour. The outline partly lay across an area of the picture that was black. The purple colour only appeared where the black lay behind it. Elsewhere, it was a much paler shade.

The problem I was having

When I tried to create a simpler case, I had trouble. If my 1px origin line was horizontal or vertical it worked perfectly. If I had a diagonal line that was thicker than 1px, it worked fine. I only had the problem if it was 1px thick and diagonal.

Why It Didn't Work

Once I knew this only didn't work because it was 1px thick and diagonal, I could see what was wrong.

Look more closely at a diagonal line that is 1px thick.

A 1px diagonal line

It isn't actually a line. It's a series of pixels. Each one is one below and one to the left relative to the one before. That means the pixels are not actually touching - it's a discontinuous shape.

This is why Photoshop Elements has this curious "feature" which means it therefore decides the stroked outline should be half opaque and half transparent. Personally, I don't think it should do this, but at least it explains why it does.

The Solution

The solution is really quite simple: Avoid shapes only a single pixel thick when it comes to stroking outline. In places, it actually has zero pixel thickness.

Add new comment

Additional Terms