我从thenounproject购买了一个图标作为SVG图像。然后我使用名为Gapplin的macOS程序将此SVG导出为PNG图像。它以100x100像素的图像形式出现。
然后我使用预览程序打开此PNG图像并转到工具 - >调整大小并创建10x10,20x20和30x30图像。然后我在Xcode中将这些图像加载为1x,2x,3x。
这是正确的方法吗?
答案 0 :(得分:14)
不,你的解决方案适用于人,但它远非理想。这样做会损失(珍贵!)图像质量(see here以获取更多详细信息)。您可以通过以下方式改进您的工作:
从原始SVG文件中导出所有3种分辨率,确保您从基于矢量的图像源(使用Gappling或其他图像应用程序)获得最佳的PNG位图;
或将您的SVG转换为PDF,然后importing the PDF vector image file in Xcode(我上次检查时,Xcode 8仍未直接支持SVG文件,因此我们陷入困境现在有好的旧PDF。
两种方法,即图像质量方面,应该产生非常相似的结果,并且是对当前工作流程的改进。
关于应用文件大小,您不应该再看到两种方法的区别。即使使用最后一种方法,Xcode仍会在构建时生成所需的资产,因此,您的应用程序将携带与第一种方法相同的图像/图标集。