ユーザーが画像をアップロードして白黒画像に変換するページがあります..
インターネットからいくつかのコードを試してみましたが、gif をアップロードすると jpeg 画像でしか機能しません
またはpng画像は、完全な黒の画像または同じカラースケールの同じ画像を示しています...
どんなコードでも大歓迎です。
コードを表示しなかったためわかりませんが、GDで画像を初期化する前に、ユーザーから取得した画像の種類をテストする必要があるようです。
私はあなたがこの機能に問題があるに違いない
$ image = imagecreatefromjpeg($ filename);
画像タイプをテストし、オプションでこれらの関数の1つを呼び出す必要があります
imagecreatefrompng($ filename)
imagecreatefromgif($ filename)
これを試して
if ($img = imagecreatefrompng($file))
else if ($img = imagecreatefromjpeg($file))
..。
この機能を使用してimagecolorallocatealpha()
、背景色を追跡しながら色を割り当てます。
例:
$color = imagecolorallocatealpha($image, 0, 0, 0,127); // transparent color