Macbook Pro Retina Screen Shot problem — again

displayresolutionscreen capture

Judging by the comments to my question, I should maybe paraphrase my question. Original post below.

The problem:

If I take a screen shot on my Retina Macbook, with a display resolution of 2560×1600, the saved file cannot be opened on the same machine at resolution 2560×1600, but needs to be rescaled to 50% (at least in Preview and XnViewMP).

My questions:

  • Why is this the case? Why can't I open a screen shot at 100% on the display the screen shot was taken of?

  • Is there a real solution for this? By "real solution" I mean, not a workaround that simply rescales the image to 50%, and as a result, will make it look somewhat blurry?



(Old version)

I'm aware that this problem — of screen shots taken on a Retina Macbook looking bad due to some "resolution mismatch" — is a known problem. It's been covered for example here.

However, I'm trying to figure out what exactly is going on, because right now I don't even understand what causes this problem:

If I take a screen shot on my rMBP 13' at a screen resolution of 2560×1600, the file that is saved has the same resolution, but opening it on the same machine, it looks a lot worse.

It seems that opening the 2560×1600 file on the same machine/display can only be done by scaling the image down 50%, to 1280×800.

Now, I understand that the blurriness I see is due to the rescaling of the image (to 50% of the file resolution), since rescaling (never?) works absolutely perfect.

Here's what I don't get: I can see how opening a Retina display screen shot on another (non-Retina) display would lead to this problem. But I don't see why, on the same machine and display, the screen shot I just took needs to be scaled to 50%.

Could anyone take a moment and explain why that's the case?

P.S. I realize that there are some workarounds which all seem to involve rescaling the image "on the go", as described for example here, or by using apps that do it for you (e.g. RetinaCapture).

However, none of these solutions solve the problem described above: that the rescaled image will look (slightly) worse than what I see on the screen, and of which I want a 1:1 screen shot.

(EDIT) Okay, just figured something out: When opening the 2560×1600 screen shot with an app called 'Acorn' (which I just downloaded, only trial mode), it looks perfect. So it seems to be somehow related to the image viewer. I tried before Preview, XnViewMP and Gimp — on all of these the, the image is scaled down to 50% to display it entirely. Anyone knows what the difference is, and if I can set any of the above programs to perform like Acorn?

(EDIT 2) A comment by user duozomo in this A.SE question suggests that the problem is due to different image viewers using different parameters for "screen pixel per image pixel". Can anyone confirm this? And if so, is there a known list of which programs use which parameter for this?

Best Answer

A Retina display's default resolution is 1440x900. I believe the screenshot feature takes a screenshot of what the monitor "seeds", so a 2560x1600 resolution of a 1440x900 screen.

I'd have a look at RetinaCapture, an app designed to take screenshots on a Retina Mac.