cocos2dx游戏在运行的时候总是出现这个警告。因为不会对实际游戏造成影响,所以就一直没有管。今天稍微google了下,原来是新版本的libpng(1.6.2之后)对png图片的检查更加严格了,所以会有这个warning。
解决方法:
1、直接改libpng的代码,这个其实很安逸,自己重新编译一下libpng的库就好了。虽然稍微麻烦了一点点,但是一点都不困难,而且一劳永逸。
而且就代码来说,除非导致png图片显示异常或者跨平台出现问题,否则都不应该莫名其妙的出现不必要的警告。
2、使用ImageMagick转换png图片。在这里下载ImageMagick。然后写个脚本转换所有png图片。
import os
CMD = r'D:\Program Files\ImageMagick-6.9.0-Q16\convert.exe'
SOURCE_PATH = r'E:\Code\res'
def doStrip(path):
data = {};
print(path)
for root, dirs, files in os.walk(path):
for file in files:
name = file.lower();
if name.find('.png') != -1:
path = os.path.join(root, file)
os.system('"{0}" {1} -strip {1}'.format(CMD, path, path));
doStrip(SOURCE_PATH)