如何访问QuickLook插件资源?

时间:2010-11-27 14:27:29

标签: cocoa quicklook

我的QuickLook插件会为文档生成HMTL预览。我需要显示保存在插件包中的图像。仅使用imageNamed:方法获取NSImage类的实例不起作用。怎么能实现呢?这是

这一事实的结果
  

Quick Look生成器被设计为CFPlugIn样式的包。

正如文件所说的那样?

2 个答案:

答案 0 :(得分:7)

我相信+ imageNamed:使用NSBundle的+ mainBundle方法。在那种情况下,这不是你的插件的捆绑。

我认为您需要直接询问插件的捆绑包:

NSString * path = [[[NSBundle bundleForClass:[MyPluginClass class]] pathForResource:@"MyImage" ofType:@"tif"];
NSImage * image = [[[NSImage alloc] initWithContentsOfFile:path] autorelease];

这是在浏览器中写的,所以可能不准确。 : - )

答案 1 :(得分:4)

在插件代码中,您可以访问插件CFBundle:

QLThumbnailRequestGetGeneratorBundle或QLPreviewRequestGetGeneratorBundle

获得捆绑包后,您可以使用以下方式查询资源文件URL:

CFBundleCopyResourceURL