从PDF文档中获取CGImageRef

时间:2010-08-03 14:33:16

标签: cocoa macos quartz-graphics

我有一个PDF文档(由PDFPages ofcourse组成),我需要一个CGImageRef来粘贴到我的IKImageView中。

目前,我从PDFPage获取datarepresentation,将其放入NSImage,然后获取NSImage的TIFFRepresentation,将其放入CGImageSource,然后从源代码中获取CGImage。

这看起来很复杂,经历了两个NSData步骤......

然而,当我尝试将PDF数据直接放入CGImageSource时,即使该APPEARS有效,当我将CGImage输出时,它总是为NULL。我有什么具体的事情可以让它发挥作用吗?

3 个答案:

答案 0 :(得分:1)

在Snow Leopard中有一种方法-[NSImage CGImageForProposedRect:context:hints:]。或者您可以将页面绘制到CGBitmapContext并使用CGBitmapContextCreateImage

答案 1 :(得分:1)

查看我的CGPDFAdditions代码中的CreatePDFPageImage函数。我认为这正是你所需要的。

答案 2 :(得分:0)

尝试将PDF文档的数据(而不是单页)提供给CGImageSource。来源的图像应与文档中的页面相对应。