Skip to main content
Inspiring
April 2, 2011

P: Cropping a Smart Layer causes Pixel Column Repeating

  • April 2, 2011
  • 14 replies
  • 913 views

When re-cropping a Smart Layer, saving and then seeing the updated smart layer on the master document, some pixel - column repeating occurs.


Image is not available



I've been aware of this issue for years, but I never knew where to speak up about it until now.

This topic has been closed for replies.

14 replies

Legend
February 4, 2015
Fixed in Photoshop CS6 or later.
Inspiring
April 4, 2011
Marc,

This is just more off topic-
It's not so much interesting that other people cut up my designs as much as it is inefficient and annoying for the company I work for, alas, my boss cannot grasp design or usage of Photoshop in the least.

I have more small suggestions for improvements in Photoshop, so I'll be sure to post those too 🙂 Thanks!
marcbjango
Known Participant
April 4, 2011
Thank you 🙂

I realise this is slightly off topic, but I find it interesting that you send PSDs to someone else to cut up, rather than supplying PNGs. I've definitely heard of people doing this before, just isn't the way I work—I usually give whoever's building a folder full of optimised PNGs. If they need changes they ask for them and I re-export what's required.

Obsessing over details is great. Let's hope we can all provide good feedback for Adobe so some of these things can be tweaked.
Inspiring
April 4, 2011
I totally forgot you can move by .5 by transforming! Duh! Boy, do I feel stupid 😄 Sunday morning.

You're saying you'll never be able to get the vector object back? You can edit a Smart Object, then edit any Smart Objects inside that one... inception style! I've never had an issue getting objects back.


I meant I rasterize the Smart Object within the second Smart Object to have a Smart Object that contains a simple rasterized bitmap image with alpha, cut down to the exact size of the object (with no extra pixels around).

The reason I'd do this, for example, is when I make entire iPhone app design, I make a PSD as a functional set of layers I can turn on and off intuitively and display different variations of app screens to save, so that I can make screen presentations and save assets for devs on fly afterwards. I just like to keep things tidy. Part of that preparation is minimizing the file size and making it error-proof, so that I can pass the optimized PSD along to someone who's less knowledgeable about iPhone design or Photoshop.
(Unfortunately, I deal with people like this.)

By the way Marc, I really enjoyed your articles on Bjango. Good to see there are still people who obsess over details like you do. I know I do.
marcbjango
Known Participant
April 4, 2011
Oh yep. Thanks for the clarification.

Octop etc: Photoshop Smart Objects can be fixed by opening the Smart Objects and Image Sizing them, then saving and changing the scale of the layer when back in the main PSD.
Inspiring
April 4, 2011
> So if you create a vector shape, turn it into a Smart Object, then scale it up, quality is lost.

Only if you created a vector shape in a raster format (PSD), because that depends on the resolution of the raster image format. If you created fully vector content (EPS, PDF) then it is rasterized at the final scale, because it has no resolution.
marcbjango
Known Participant
April 4, 2011
you say you moved the Smart Object by .5px by zooming in 200%. Unless I'm missing something, the only way to move a Smart Object is using the move tool, right?


I should have been more clear. I used the Free Transform tool to move it. Zoom in to 200%, then press command-T, then left arrow on the keyboard, then return will move it 0.5 px.

For a bit more about nudging while zoomed, please read this: http://bjango.com/articles/pixelnudging/

The problem with this, of course, is that if the original Smart Object had a vector inside, it's lost


You're saying you'll never be able to get the vector object back? You can edit a Smart Object, then edit any Smart Objects inside that one... inception style! I've never had an issue getting objects back.

Also, Smart Objects get bitmap rendered at their original size. This means that vectors inside smart objects don't get rerendered if you scale the Smart Object. So if you create a vector shape, turn it into a Smart Object, then scale it up, quality is lost.
Inspiring
April 3, 2011
Marc,

This may seem like a stupid question - but you say you moved the Smart Object by .5px by zooming in 200%. Unless I'm missing something, the only way to move a Smart Object is using the move tool, right? Everytime I nudge the object, it moves by a full pixel, never by half. I've only been able to nudge by less than a pixel using the Path Selection Tool, which obviously only works on vectors.

I opened up the most affected (third) Smart Object and cropped it with 1px room to the right and the problem suddenly went away, despite the fact that the size was 27x46, which wouldn't be possible if the amount of pixels had to be even for it to work, as you said.
The second affected Smart Object has an even (32x50) resolution. Moving it inside didn't change its appearance once updated, but cropping it to 33x50 seems to have done the trick. Strange.

I've observed that Photoshop leaves empty pixels around the smart objects by default. I always thought this was to prevent this issue from happening. I don't care for those extra pixels because it makes measuring inaccurate sometimes because the layer size (when transforming) includes the empty pixels.

My workaround for the past few years for this problem has been to turn the Smart Object into a Smart Object again, opening it and then rasterizing the Smart Object inside it. The problem with this, of course, is that if the original Smart Object had a vector inside, it's lost. To prevent myself from losing any data I save many versions of the same file, so I'd end up with a long sequence of the same PSDs in various stages of progress so I can grab the object from an older PSD. Alternative to this is keeping an invisible folder with those leftover layers within the PSD, but that can kind of add up and then you have 50+ PSDs weighing at 250MB each or more.

Not very space efficient, but it works.

Photoshop keeps all the Smart Objects within a PSD in memory, so if there's more Smart Objects, it can come down on RAM pretty quick. Can PSDs refer to external PSBs as the Smart Object and save RAM memory that way?
marcbjango
Known Participant
April 3, 2011
it gets offset 0.5px on the X axis


I didn't mention that I think this is because the Smart Object is getting centred. So adding or crop an even amount of pixels, then the centring wouldn't cause issues, but if you add or crop an odd number of pixels, then it'll be 0.5px off.
marcbjango
Known Participant
April 3, 2011
I believe this is a positioning issue, rather than a scaling issue.

I was able to correct the layer in question by zooming to 200% then nudging once to the right. Nudging zoomed in to 200% moves the Smart Object 0.5 pixels. It seems the object was 0.5 pixels offset after the crop.

This can be semi-confirmed: If you open up the Smart Object and add 2px width, then no quality is lost. If you open up the Smart Object and add 1px width, it gets offset 0.5px on the X axis and appears different.

Octop: It seems like a bug to me, but hopefully there's a workaround for now that helps you correct the issue in the mean time.