PHPでは、画像を処理するための一般的な要件は、異なる形式の画像をPNGなどの共通形式の1つに変換することです。 GDイメージライブラリは、さまざまな画像形式を処理するための強力な関数を提供します。ここでは、 ImageCreateFromGD2()を使用して.gd2形式で画像ファイルを読み取ることができ、 ImagePng()は画像をPNG形式に出力できます。
以下に、これら2つの機能を使用してGD2からPNGへの変換を完了し、完全な例を提供する方法を詳細に説明します。
ImageCreateFromgd2()は、PHPが提供するGDライブラリ関数の1つであり、GD2画像ファイルから画像リソースを作成します。
resource imagecreatefromgd2 ( string $filename )
$ filename : .gd2ファイルを読み取るパス。
返品値:成功したときに画像リソースを返し、障害時にfalseを返します。
ImagePng()は、画像リソースをPNG形式に出力または保存するために使用されます。
bool imagepng ( resource $image [, string $filename [, int $quality [, int $filters ]]] )
$画像:画像リソース。
$ filename (オプション):出力ファイルへのパスは、指定されていない場合、ブラウザに直接出力されます。
$ quality (オプション):PNG圧縮品質、0(圧縮なし)から9(最大圧縮)の範囲、デフォルトは-1(自動選択)です。
$フィルター(オプション):PNGに適用されたフィルターを指定しますが、一般に変更は必要ありません。
.pngファイルとして.gd2画像を読み取り、保存するための完全なPHPスクリプトの例を示します。
<?php
// 設定 GD2 ファイルパス
$gd2_file = 'https://m66.net/images/sample.gd2';
// ローカルセーブパス(実際のアプリケーションでは、最初にダウンロードする必要があります GD2 書類)
$local_gd2 = 'sample.gd2';
file_put_contents($local_gd2, file_get_contents($gd2_file));
// から GD2 書類创建图像资源
$image = imagecreatefromgd2($local_gd2);
// 画像が正常にロードされているかどうかを確認してください
if (!$image) {
die('无法から GD2 書類创建图像资源。');
}
// 設定输出 PNG 書類名
$output_file = 'output_image.png';
// 画像リソースをとして保存します PNG 書類,圧縮品質はです 6
if (imagepng($image, $output_file, 6)) {
echo 'PNG 画像は正常に保存されています:' . $output_file;
} else {
echo '保存 PNG 画像が失敗しました。';
}
// 画像リソースを破壊します,無料のメモリ
imagedestroy($image);
?>
GDライブラリサポート:PHP環境でGDライブラリが有効になっていることを確認してください。そうしないと、これらの機能は利用できません。
GD2ファイル形式: .GD2はGDライブラリの特定の形式です。通常、直接使用されておらず、関連するツールやスクリプトを使用して事前に生成する必要があります。
ファイルパスセキュリティ:ユーザーのアップロードまたは外部リソースを処理するときは、任意のファイルにアクセスするリスクを回避するために、パス検証に注意してください。
ブラウザ出力画像:ファイルとして保存する代わりに画像をブラウザーに直接表示する場合は、 ImagePng()の2番目のパラメーターを省略し、正しいコンテンツタイプを設定できます。
header('Content-Type: image/png');
imagepng($image);