在 Xcode 7.2 中将 PDF 用于图标图像

Using PDFs for icon images in Xcode 7.2

我正在尝试将 PDF 文件用作我正在开发的应用程序中的图标。我遇到的问题是色调颜色不一致。

如果我从界面生成器设置按钮图像,图标图像在运行时显示 黑色。每次。不管我试图从界面生成器中设置什么。

我尝试通过代码设置我的按钮图标图像,显示的不是黑色,而是白色:

let myGraphicFile = UIImage(named: "myPDFImage")
let myButtonImage = myGraphicFile?.imageWithRenderingMode(UIImageRenderingMode.AlwaysTemplate)
myButton.setImage(myButtonImage, forState: .Normal)

从代码来看,无论我尝试将色调设置为什么,从代码来看它始终是白色。

我发现这个 post 与 Xcode 6.x 有关,但我认为它可能过时了,因为我可以部分地做到这一点,但我无法设置色调。

Use PDF in XCode for an AppIcon (.appiconset collection)

我在 Inkscape 中创建图标,另存为 PDF 1.5。我将文件添加到 Images.xcassets。在 Images.xcassets' 属性检查器中,我设置:

设备通用

比例因子单向量

总结:我可以让它正确显示和缩放,但它要么是来自界面生成器的黑色,要么是来自代码的白色。我怀疑我遗漏了一些关于如何从 Inkscape 保存文件的内容。

感谢您的阅读。如果您有任何建议,欢迎提出。

我已经弄清楚如何使用 Inkscape 创建矢量图标了。当您在 iOS 中使用 PDF 显示图标时,您需要在 xcAssets 中更改图标的属性检查器,如下所示:

1) 将PDF拖入xcAssets

2) 设置设备(我做了 Universal,效果很好)

3) 如果您的 PDF 图标小于 1x、2x 或 3x 大小 class,请将其拖到 Universal 并删除其余图标。

4) 将比例因子设置为单向量

5) 渲染为 模板图像.

在那里配置后,您就可以像对待界面生成器中的任何其他图像一样对待它。这基本上与我在代码中所做的相同,但我不认为它是在代码中完成的……它必须在图像所在的 xcAssets 上完成。据我了解,iOS 在 运行 时渲染大小为 class 的矢量图像。我认为尝试在代码中调整它是行不通的,因为图像已经被渲染了。

如果有人对此有任何疑问,我发现 this link 对解决我的问题很有帮助。

此外,此 post 也涵盖了该主题。