インターネットの開発により、画像処理は最新のウェブサイト開発の重要な部分になりました。画像切断は一般的な要件であり、大きな画像を複数の小さな画像に分割したり、1つの大きな画像にスプライしたりすることができます。この記事では、PHPを使用してGDライブラリを組み合わせて画像切断を実現する方法を示します。
画像処理を行う前に、サーバーにPHPおよびGDライブラリがインストールされていることを確認してください。 GDライブラリは、透かしを生成、スケーリング、追加するのに役立つ強力な画像処理ツールです。 GDライブラリがインストールされているかどうかわからない場合は、phpinfo()関数を使用して関連情報を表示できます。
まず、メモリにカットするために必要な画像をロードする必要があります。 PHPは、ImageCreateFromJpeg()、ImageCreateFrommpng()、ImageCreateFromgif()などの関数を提供し、異なる形式の画像ファイルから画像リソースを作成できるようにします。
JPEG形式で画像をロードするための簡単なコード例を次に示します。
<?php<br> $ img = imagecreatefromjpeg( 'emple.jpg');
次に、GDライブラリによって提供されたImageCopyResampled()関数を使用して、元の画像を複数の小さな画像にカットできます。切断の鍵は、切断の位置とサイズを決定することです。
次のコードは、400x400サイズの画像を4つの小さな200x200画像にカットする方法を示しています。
<?php<br> // 200x200の4つの空白の画像リソースを作成します<br>$ smallimg1 = imageCreateTrueColor(200、200);<br> $ smallimg2 = imageCreateTrueColor(200、200);<br> $ smallimg3 = imageCreateTrueColor(200、200);<br> $ smallimg4 = imageCreateTrueColor(200、200);<br><br> //写真をカットします<br>ImageCopyResampled($ smallimg1、$ img、0、0、0、0、200、200、400、400);<br> ImageCopyResampled($ smallimg2、$ img、0、0、200、0、200、200、400、400);<br> ImageCopyResampled($ smallimg3、$ img、0、0、0、200、200、200、400、400);<br> ImageCopyResampled($ smallimg4、$ img、0、0、200、200、200、200、400、400);<br><br> //カット写真を保存します<br>ImageJpeg($ smallimg1、 'smallimg1.jpg');<br> imagejpeg($ smallimg2、 'smallimg2.jpg');<br> ImageJpeg($ smallimg3、 'smallimg3.jpg');<br> ImageJpeg($ smallimg4、 'smallimg4.jpg');
上記の例では、最初に200x200サイズの4つの空白の画像リソースを作成しました。次に、ImageCopyResampled()関数を使用して、元の画像を4つの小さな画像にカットし、ファイルに保存します。
画像を処理した後、メモリの漏れを避けるためにメモリを解放する必要があります。画像リソースは、Imagedestroy()関数を呼び出すことで破壊できます。
<?php<br> Imagedestroy($ smallimg1);<br> Imagedestroy($ smallimg2);<br> Imagedestroy($ smallimg3);<br> Imagedestroy($ smallimg4);
Imagedestroy()関数を呼び出すことにより、画像を処理するときに占有されているメモリをクリアして、他のタスクのリソースを解放します。
この記事では、画像切断にPHPおよびGDライブラリを使用する方法について説明します。最初に、画像をメモリにロードし、次にimageCopyResampled()関数を使用して、画像を複数の小さな画像にカットして保存します。最後に、Imagedestroy()関数を介して画像リソースをリリースします。この記事が、画像切断のためにPHPおよびGDライブラリをよりよく理解し、使用するのに役立つことを願っています。