imagetruecolortopalette

TrueColor イメージをパレットイメージに変換する

説明

bool imagetruecolortopalette(GdImage $image, bool $dither, int $num_colors)

imagetruecolortopalette は、TrueColorイメー ジをパレットイメージに変換します。この関数のコードは、元々 Independent JPEG Groupライブラリ用に書かれたもので、素晴らしいも のです。このコードは、色をできる限り維持することに加えて、アルファ チャネルに関する情報を出力されるパレットにおいてできるだけ維持す るように修正されています。これは、期待通りにうまくいきません。通 常は、最高の出力品質が保障されるTrueColor出力イメージを単に出力す るのが最良の方法です。

パラメータ

image

imagecreatetruecolorのような画像作成関数が返す GdImage オブジェクト。

dither

イメージにディザーをかけることを指定します。 true の場合はディザーが行われます。 出力はぼやけますが、色の近似はより良くなります。

num_colors

パレットに保持される最大の色数を設定します。

戻り値

成功した場合に true を、失敗した場合に false を返します。

変更履歴

バージョン 説明
8.0.0 image は、 GdImage クラスのインスタンスを期待するようになりました。 これより前のバージョンでは、有効な gd resource が期待されていました。

例1 true color 画像からパレット画像への変換

<?php
// 新しい true color 画像を作成します
$im = imagecreatetruecolor(100, 100);

// ディザリングなしの 255 色パレットに変換します
imagetruecolortopalette($im, false, 255);

// 画像を保存します
imagepng($im, './paletteimage.png');
imagedestroy($im);
?>