imagejpeg
(PHP 4, PHP 5, PHP 7)
imagejpeg — 画像をブラウザあるいはファイルに出力する
説明
imagejpeg() は、画像 image から
JPEG ファイルを作成します。
パラメータ
-
image -
imagecreatetruecolor() のような画像作成関数が返す画像リソース。
-
to -
ファイル保存先のパスあるいはオープン中のリソース (この関数が値を戻した後で自動的にクローズされます)。省略したり
NULLを設定したりした場合は、画像ストリームを直接出力します。qualityパラメータを指定するためにこの引数をスキップするには、NULLを指定します。 -
quality -
qualityはオプションであり、0(品質は最低 ですが、ファイルはより小さい)から100(品質は最高ですが、ファイルは 最大)の範囲で指定します。デフォルトは IJG 品質値(75)です。
返り値
成功した場合に TRUE を、失敗した場合に FALSE を返します。
警告
しかしながら、libgd がイメージの出力に失敗した場合、この関数は TRUE を返します。
変更履歴
| バージョン | 説明 |
|---|---|
| 5.4.0 |
ストリームリソースを to
に渡せるようになりました。
|
| 5.4.0 |
空文字列を to に渡して
この引数をスキップすることはできなくなりました。
|
例
例1 JPEG 画像のブラウザへの出力
<?php
// 空の画像を作成し、テキストを追加します
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);
// content type ヘッダを、ここでは image/jpeg と設定します
header('Content-Type: image/jpeg');
// 画像を出力します
imagejpeg($im);
// メモリを開放します
imagedestroy($im);
?>
上の例の出力は、 たとえば以下のようになります。
例2 JPEG 画像のファイルへの保存
<?php
// 空の画像を作成し、テキストを追加します
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);
// 画像を 'simpletext.jpg' として保存します
imagejpeg($im, 'simpletext.jpg');
// メモリを開放します
imagedestroy($im);
?>
例3 75% 品質でのブラウザへの画像の出力
<?php
// 空の画像を作成し、テキストを追加します
$im = imagecreatetruecolor(120, 20);
$text_color = imagecolorallocate($im, 233, 14, 91);
imagestring($im, 1, 5, 5, 'A Simple Text String', $text_color);
// content type ヘッダを、ここでは image/jpeg と設定します
header('Content-Type: image/jpeg');
// to パラメータを NULL でスキップし、品質を 75% に設定します
imagejpeg($im, NULL, 75);
// メモリを開放します
imagedestroy($im);
?>
注意
注意:
プログレッシブ JPEG を出力したい場合には、 imageinterlace() でインターレースをセットする必要があります。
参考
- imagepng() - PNG イメージをブラウザまたはファイルに出力する
- imagegif() - 画像をブラウザあるいはファイルに出力する
- imagewbmp() - 画像をブラウザあるいはファイルに出力する
- imageinterlace() - インターレースを有効もしくは無効にする
- imagetypes() - この PHP がサポートしている画像形式を返す