问题
i know that Pngcrush is an image optimisation technique in iOS , but my doubt is does X-code will perform this internally during each build or before deploying our app to iTunes store we need to do this image optimization?
回答1:
Xcode does the conversion during build. The final app will have modified pngs, you don't have to do anything manually.
回答2:
The PNG crushing is done using the pngcrush
tool which you can access manually with this command:
xcrun -sdk iphoneos pngcrush -iphone ...
Xcode will do this automatically for any files added to your target with the "PNG" file type:
If you include resources using a directory reference, the PNG crushing will not be performed by Xcode and you will have to do this manually.
You can crush all the PNGs in a directory manually using this little bash snippet:
find /path/to/directory -name "*.png" | while read filename; do
xcrun -sdk iphoneos pngcrush -iphone "$filename" "${filename}_crushed"
mv "${filename}_crushed" "${filename}"
done
回答3:
By default, XCode performs automatically the crunching.
You can control this behavior from your project's build settings:
Search for the setting "Compress PNG Files" and set the value you want.
来源:https://stackoverflow.com/questions/10716303/what-is-pngcrush-in-ios