私はpngcrushでいくつかのpng画像を最適化するために以下を使用しています:
exec(
"pngcrush -q -blacken -brute -reduce -rem alla -rem text -rem time {$source} {$destination}",
$output,
$return_var
);
最適化は非常にうまく機能しますが、一部の画像では、png が透明部分に黒いブロックを作成しています。
-reduce オプションを削除すると問題は解決しますが、PNG の最適化はほとんど行われず、最適化を実行してもまったく意味がありません。
問題は透明度に関係していると思いますので、透過性のない画像に対してのみ、pngcrush に -reduce コマンドをスキップするように指示する方法はありますか?