Re: NSImage and zooming PDFs vs. bitmaps

2008-08-12 Thread Hamish Sanderson
On 11 Aug 2008, at 17:52, Ken Ferry wrote: A combination of -setDataRetained: on image loading and -recache on zooming did the trick, although I did need to kludge in a size check before calling -recache as rasterising an entire PDF above ~10,000x10,000 quickly gets painful performance-

Re: NSImage and zooming PDFs vs. bitmaps

2008-08-12 Thread Adam R. Maxwell
On Tuesday, August 12, 2008, at 11:09AM, Ken Ferry [EMAIL PROTECTED] wrote: Okay, thanks Hamish. This area is getting some love for SnowLeopard. I suspect that all these issues except for the one about opting not to make large caches are already fixed. NSImage should be something that (a) does

Re: NSImage and zooming PDFs vs. bitmaps

2008-08-11 Thread Hamish Sanderson
On 8 Aug 2008, at 17:53, Ken Ferry wrote: The correct answer is to call setDataRetained:YES on your image. However, there may be a bug in Leopard and previous with NSImage cache expiration that prevents that from being enough. If you seem to be hitting it, you can probably work around it by

Re: NSImage and zooming PDFs vs. bitmaps

2008-08-11 Thread Ken Ferry
On Aug 11, 2008, at 1:15 AM, Hamish Sanderson [EMAIL PROTECTED] wrote: On 8 Aug 2008, at 17:53, Ken Ferry wrote: The correct answer is to call setDataRetained:YES on your image. However, there may be a bug in Leopard and previous with NSImage cache expiration that prevents that from

NSImage and zooming PDFs vs. bitmaps

2008-08-08 Thread Hamish Sanderson
Hi all, I'm writing a Core Animation-based image viewer application for use with both bitmap (TIFF, JPEG) and vector (EPS, PDF) images but I'm rather new to this stuff and am struggling to get the zooming feature to work well with vector images. Image files are loaded via -[NSImage

Re: NSImage and zooming PDFs vs. bitmaps

2008-08-08 Thread Ken Ferry
Hi Hamish, The correct answer is to call setDataRetained:YES on your image. However, there may be a bug in Leopard and previous with NSImage cache expiration that prevents that from being enough. If you seem to be hitting it, you can probably work around it by additionally turning off caching