我注意到,在最新版本的Xcode中,“选项卡式应用程序”的项目模板创建了一个项目,其中选项卡条图标图像(默认两个可用的选项卡/视图控制器称为“第一”和“第二”)实际上以.pdf格式存储.pdf格式,而不是.png,并以"All“的分辨率显示在Assets.xcassets文件夹中,作为”通用“(而不是像应用图标那样,用作"iPhone app iOS 7-8”的解析"@3x“)。
我认为这是为了提供一个基于矢量图形的资源,它是真正独立于分辨率的,因此支持各种设备。
我的问题是:,以这种格式创建自定义资源的指南是什么?我想它应该从用创建一个自定义大纲开始,并以pdf格式导出它,但是,我应该使用什么大小和单位呢?还有什么其他的事情要注意吗?我还没有在苹果的官方文档中找到任何东西,而对"ios选项卡栏图标pdf“的网络搜索只提供指向提供剪贴画的网站的链接。
备注:我想过是在这里还是在Graphic Design Stack Exchange站点上发布这个问题,但是它仍然与Xcode IDE和开发iOS应用程序有关,所以我在这里下注。如果你不这么认为的话,你可以投票决定关闭它。
发布于 2015-08-13 04:12:20
我认为这是为了提供一个基于矢量图形的资源,它是真正独立于分辨率的,因此支持各种设备。
我的理解是,Xcode实际上将这些矢量图像转换为具有适当分辨率的位图。因此,它们只在设计时是向量,在运行时是位图。
以这种格式创建自定义资源的指南是什么?我想它应该从用创建一个自定义大纲开始,并以pdf格式导出它,但是,我应该使用什么大小和单位呢?
以点为单位创建大小,大小与您想要的图标大小相同。然后导出为PDF。我注意到一些程序生成的PDF在Interface中看起来不错,但在实际的应用程序中是空白的。也许Illustrator会工作的很好,但如果不是,尝试另一个程序来转换为PDF。
发布于 2015-11-17 05:00:12
我理解MirekE的答案,因为我经历了挑战,现在有了解决方案。但对于其他人来说,这是一个现实世界的例子。
我创建我的所有线图标(或任何你选择的)使用草图(强烈推荐)使用一个30×30的图板,然后应用在里面的图纸。我使背景透明,然后将导出设置为1倍大小,并应用PDF格式。在这张截图里可以看到。

然后简单地导入Xcode >在Images.xcassets中创建对象>选择图像组>从下拉缩放因子中选择单个向量(在属性检查器中)>然后将导入的图像拖放到单个位置保持器中。

我已经将这种方法应用于我的所有自定义选项卡项,结果非常出色。
发布于 2021-02-05 16:27:35
我刚刚遇到了这个问题,我通过使用这个扩展名手动调整UIImage大小来解决这个问题:
extension UIImage {
func aspectFit(to size: CGSize) -> UIImage? {
let width = self.size.width
let height = self.size.height
let widthScale = size.width / width
let heightScale = size.height / height
let scaleFactor = min(widthScale, heightScale)
UIGraphicsBeginImageContextWithOptions(CGSize(width: width * scaleFactor, height: height * scaleFactor), false, 0.0)
self.draw(in: CGRect(x: 0.0, y: 0.0, width: width * scaleFactor, height: height * scaleFactor))
defer {
UIGraphicsEndImageContext()
}
return UIGraphicsGetImageFromCurrentImageContext()
}
}用法:
tabBarItem.image = myImage.aspectFit(to: CGSize(width: 25, height: 25))https://stackoverflow.com/questions/31979160
复制相似问题