警告: libpng 警告: iCCP: 既知の正しくない sRGB プロファイル
P粉002572690
P粉002572690 2023-10-12 22:06:35
0
2
889

SDL を使用して PNG 画像をロードしようとしましたが、プログラムが実行されず、コンソールにこのエラーが表示されます

libpng 警告: iCCP: 既知の正しくない sRGB プロファイル

なぜこの警告が表示されるのでしょうか?この問題を解決するにはどうすればよいですか?

P粉002572690
P粉002572690

全員に返信(2)
P粉481035232

pngcrush を使用して、PNG ファイルから間違った sRGB プロファイルを削除します: リーリー

  • -ow は入力ファイル を上書きします
  • -rem allb は、tRNS と gAMA を除くすべての補助ブロックを削除します。
  • -reduce ロスレス カラー タイプまたはビット深度の削減を実行します
コンソール出力には、

Removed the sRGB chunk と、場合によってはチャンクの削除に関するその他のメッセージが表示されます。最終的には、より小さく最適化された PNG ファイルが作成されます。このコマンドは元のファイルを上書きするため、必ずバックアップを作成するか、バージョン管理を使用してください。

いいねを押す +0
P粉300541798

一部のアプリケーションは警告をエラーとして処理します。そのようなアプリケーションを使用している場合は、このブロックを削除する必要があります。これは、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 フォルダーに移動します。 ###例えば:### リーリー

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート