5

我的 QuickLook 插件为文档生成 HMTL 预览。我需要显示保存在插件包中的图像。简单地使用imageNamed:方法来获取NSImage类的实例是行不通的。怎样才能做到这一点?这是因为

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

正如文件所说?

4

2 回答 2

7

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

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

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

这是在浏览器中编写的,因此可能不准确。:-)

于 2010-11-27T15:22:45.527 回答
4

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

QLThumbnailRequestGetGeneratorBundle 或 QLPreviewRequestGetGeneratorBundle

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

CFBundleCopyResourceURL

于 2010-12-25T00:38:27.023 回答