什么是iOS中的PngCrush?

时间:2012-05-23 08:35:08

标签: objective-c ios xcode image-optimization pngcrush

我知道Pngcrush是iOS中的图像优化技术,但我怀疑X-code会在每次构建期间内部执行此操作,还是在将我们的应用程序部署到iTunes商店之前我们需要进行此图像优化?

3 个答案:

答案 0 :(得分:4)

Xcode在构建期间进行转换。最终应用程序将修改png,您无需手动执行任何操作。

答案 1 :(得分:4)

PNG破碎是使用pngcrush工具完成的,您可以使用此命令手动访问该工具:

xcrun -sdk iphoneos pngcrush -iphone ...

对于使用“PNG”文件类型添加到目标的任何文件,Xcode会自动执行此操作:

enter image description here

如果您使用目录引用包含资源,则XG将执行的PNG压缩,您必须手动执行此操作。

您可以使用这个小bash片段手动粉碎目录中的所有PNG:

find /path/to/directory -name "*.png" | while read filename; do
    xcrun -sdk iphoneos pngcrush -iphone "$filename" "${filename}_crushed"
    mv "${filename}_crushed" "${filename}"
done

答案 2 :(得分:2)

默认情况下,XCode自动执行

您可以从项目的构建设置中控制此行为:

搜索“压缩PNG文件”设置并设置所需的值。