[OG3P] Pasting bitmap images from the clipboard

William Jon Shipley wjs at omnigroup.com
Wed Apr 16 17:36:00 PDT 2003


On Wednesday, April 16, 2003, at 03:51  PM, Christian Roth wrote:

> when I copy some selection of a 200dpi pixel image (from e.g. PSE) to 
> the
> clipboard and paste that in an OG document, the absolute size of the
> selection seems to be retained, but the quality of the image seems to
> drop to 72dpi. It somehow looks like OG retains the absolute size of 
> the
> selection in cm, but downsamples the pixel content.

Unfortunately Apple doesn't support copy and paste of PNGs natively, so 
PSE is converting your data to some neutral format when you copy it 
out. Might be PICT, even.

Please send mail to Cocoa-feedback at apple.com and tell them to add 
NSPNGPasteboardType, and we'll use it. (Seriously! Users complaining = 
changes made.) Of course, PSE would have to honor this, as well, but at 
least we'd be able to copy and paste PNGs from Graffle to Mail and the 
like.

> On the other hand, when I save the image first to a file and then do a
> "Place image...", OG keeps the full pixel information, but does not 
> keep
> the absolute size (it looks like if it assumed some 72dpi for the image
> and determined its absolute size based on that factor and the pixel 
> count
> found). I used the PNG format for my test which indeed does save dpi
> information (in contrast to GIF, e.g.).

We're using Apple's AppKit PNG loader, which is probably broken with 
regards to maintaining DPI on PNG import. Frankly, the image converters 
in AppKit are pretty, uh, weak. We had to rip out GIF export because 
AppKit's export has so many bugs, and it turns out BMP export doesn't 
work at all, even though it's documented.

If you write to Cocoa-feedback, you might ask why they don't make 
AppKit use QuickTime's image conversion architecture natively, as 
Preview does, so all apps can have rich and flavorful conversions.

-Wil Shipley
Project Manager, OmniGraffle 3.0




More information about the OmniGraffle-Users mailing list