SDL を使用して PNG 画像をロードしようとしましたが、プログラムが実行されず、コンソールにこのエラーが表示されます
libpng 警告: iCCP: 既知の正しくない sRGB プロファイル
なぜこの警告が表示されるのでしょうか?この問題を解決するにはどうすればよいですか?
pngcrush を使用して、PNG ファイルから間違った sRGB プロファイルを削除します: リーリー
は入力ファイル
は、tRNS と gAMA
ロスレス カラー タイプまたはビット深度の削減を実行します
Removed the sRGB chunk と、場合によってはチャンクの削除に関するその他のメッセージが表示されます。最終的には、より小さく最適化された PNG ファイルが作成されます。このコマンドは元のファイルを上書きするため、必ずバックアップを作成するか、バージョン管理を使用してください。
と、場合によってはチャンクの削除に関するその他のメッセージが表示されます。最終的には、より小さく最適化された PNG ファイルが作成されます。このコマンドは元のファイルを上書きするため、必ずバックアップを作成するか、バージョン管理を使用してください。
一部のアプリケーションは警告をエラーとして処理します。そのようなアプリケーションを使用している場合は、このブロックを削除する必要があります。これは、ImageMagick などの任意の種類の PNG エディタを使用して行うことができます。
Windows CMD プロンプトを使用して、以下にリストされているコマンドを使用する前に、注目したい画像が含まれるフォルダーに cd (ディレクトリを変更) する必要があります。
(ディレクトリを変更) する必要があります。
リーリー
mogrify を使用できます。 リーリー
を使用できます。
を実行できます。 リーリー
-n はファイルを書き換えないことを意味し、-q は警告を除くほとんどの出力を抑制することを意味します。申し訳ありませんが、pngcrush には警告以外のすべてを抑制するオプションがまだありません。
はファイルを書き換えないことを意味し、
は警告を除くほとんどの出力を抑制することを意味します。申し訳ありませんが、pngcrush には警告以外のすべてを抑制するオプションがまだありません。
注: pngcrush がインストールされている必要があります。
ここにあります
res フォルダーに移動します。 ###例えば:### リーリー
フォルダーに移動します。
pngcrush
を使用して、PNG ファイルから間違った sRGB プロファイルを削除します: リーリー
は入力ファイル
を上書きしますは、tRNS と gAMA
を除くすべての補助ブロックを削除します。ロスレス カラー タイプまたはビット深度の削減を実行します
Removed the sRGB chunk
と、場合によってはチャンクの削除に関するその他のメッセージが表示されます。最終的には、より小さく最適化された PNG ファイルが作成されます。このコマンドは元のファイルを上書きするため、必ずバックアップを作成するか、バージョン管理を使用してください。
一部のアプリケーションは警告をエラーとして処理します。そのようなアプリケーションを使用している場合は、このブロックを削除する必要があります。これは、ImageMagick などの任意の種類の PNG エディタを使用して行うことができます。
Windows CMD プロンプトを使用して、以下にリストされているコマンドを使用する前に、注目したい画像が含まれるフォルダーに cd
Libpng-1.6 では、以前のバージョンよりも ICC プロファイルのチェックが厳しくなっているため、警告は無視してかまいません。これを取り除くには、PNG 画像から iCCP ブロックを削除します。(ディレクトリを変更) する必要があります。
リーリー
フォルダー (ディレクトリ) 内のすべての PNG ファイルから無効な iCCP ブロックを削除するには、ImageMagick のmogrify
これには、ImageMagick が libpng16 でビルドされている必要があります。次のコマンドを実行すると簡単に確認できます:を使用できます。
リーリーリーリー
すべてのファイルをやみくもに処理するのではなく、修復する必要があるファイルを見つけたい場合は、を実行できます。 リーリー
ここで、-n
はファイルを書き換えないことを意味し、
-qは警告を除くほとんどの出力を抑制することを意味します。申し訳ありませんが、pngcrush には警告以外のすべてを抑制するオプションがまだありません。
注: pngcrush がインストールされている必要があります。
ImageMagick のバイナリ バージョンは
ここにあります
Android プロジェクト (Android Studio) の場合は、
res
フォルダーに移動します。
###例えば:### リーリー