iCCP: Not recognizing known sRGB profile that has been edited のエラーを手っ取り早く回避


CMSのテスト中に出た「iCCP: Not recognizing known sRGB profile that has been edited」をとりあえず回避する方法。Perl の Image::Magick を利用していた場合のお話。

CMSを開発しているので、テストの際は様々なタイプ・サイズの画像アップロードなどを試す。テスト用に作った画像をアップロードした所、PNG画像のみ Image::Magick が以下のエラーを吐いた。ほぼ同じ方法で作った JPEG、GIF はOK。

iCCP: Not recognizing known sRGB profile that has been edited

調べたら、画像作成ツールによって、PNG形式が微妙に違うのをうまく認識できない(libpng のバグ)らしい。テスト用画像は Image::Magic でリサイズして作ったんだけどね…。別の環境だったからかな?

かるくググるとバグフィックスがあるらしいが、テスト環境に入れるとまたPerl の Image::Magick の方との相性が合わないと困るので、とりあえず
Fireworks で画像を開いて保存し直す。 (それも手動)
という極めて安易な対処療法で乗り切った。