通过阅读Xcode的构建日志,我注意到对于Groups中的PNG图像,运行如下命令:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/copypng -compress“”resource_folder_path / image.png app_bundle_path / image.png
但是,对于“文件夹引用”,这些文件夹下的PNG图像没有单独的复制命令,但每个文件夹引用只有一个复制命令:
builtin-copy -exclude .DS_Store -exclude CVS -exclude .svn -exclude .git -exclude .hg -resolve-src-symlinks img_folder_path app_bundle_path
虽然我找不到builtin-copy
命令(任何人都可以告诉我它在哪里吗?),但它似乎没有pngcrush
PNG图像。这是真的吗?如果是这样,有什么好方法可以使用文件夹引用来组织PNG图像,并且在将这些图像复制到包中时仍然可以让这些图像pngcrush
?
答案 0 :(得分:1)
如果你使用文件夹引用,Xcode将不会自动进行PNG破碎,你必须手动进行优化。要在您的文件夹中手动运行pngcrush,您可以使用此answer中提供的bash代码段:
find /path/to/directory -name "*.png" | while read filename; do
xcrun -sdk iphoneos pngcrush -iphone "$filename" "${filename}_crushed"
mv "${filename}_crushed" "${filename}"
done
如果您不喜欢命令行,则可以使用ImageOptim之类的应用程序。