Rumah >pembangunan bahagian belakang >tutorial php >Cara memangkas dan mengubah saiz imej menggunakan PHP
Cara menggunakan PHP untuk memangkas dan mengezum imej
Pengenalan: Dalam pembangunan web, selalunya perlu memangkas dan mengezum imej. Sebagai bahasa sebelah pelayan yang popular, PHP menyediakan pelbagai fungsi pemprosesan imej dan perpustakaan untuk memudahkan kami melaksanakan pelbagai operasi pada imej. Artikel ini akan memperkenalkan cara menggunakan PHP untuk memangkas dan mengezum imej, dan memberikan contoh kod yang sepadan.
1. Pangkas gambar
Potong gambar bermaksud potong bahagian yang kita perlukan dari gambar asal. Dalam PHP, pemangkasan gambar boleh dicapai menggunakan fungsi yang disediakan oleh perpustakaan GD.
Langkah 1: Buka imej asal
Mula-mula, kita perlu membuka imej asal dan mencipta sumber imej menggunakan fungsi seperti imagecreatefromjpeg()
atau imagecreatefrompng()
. imagecreatefromjpeg()
或imagecreatefrompng()
等函数创建一个图片资源。
$sourceImage = imagecreatefromjpeg('original.jpg');
步骤2:创建目标图片
接下来,我们需要创建一个目标图片,作为裁剪后的结果。可以使用imagecreatetruecolor()
函数创建一个与原始图片一样大小的图片资源。
$width = imagesx($sourceImage); $height = imagesy($sourceImage); $targetImage = imagecreatetruecolor($width, $height);
步骤3:裁剪图片
使用函数imagecopy()
将原始图片中的一部分复制到目标图片中。需要传入原始图片资源、目标图片资源、目标图片的起始坐标和原始图片的起始坐标。下面以从原始图片中截取中间一部分作为示例。
$targetX = 0; $targetY = 0; $sourceX = $width / 4; $sourceY = $height / 4; $targetWidth = $width / 2; $targetHeight = $height / 2; $sourceWidth = $width / 2; $sourceHeight = $height / 2; imagecopy($targetImage, $sourceImage, $targetX, $targetY, $sourceX, $sourceY, $targetWidth, $targetHeight);
步骤4:保存结果图片
最后,我们需要将裁剪后的结果保存到文件中。使用imagejpeg()
函数将目标图片保存为JPEG格式的文件。
imagejpeg($targetImage, 'cropped.jpg');
至此,我们完成了对图片的裁剪操作。
二、缩放图片
缩放图片是指按照一定比例改变图片的尺寸。在PHP中,我们可以使用GD库提供的函数来实现图片的缩放。
步骤1:打开原始图片
同样,我们首先需要使用imagecreatefromjpeg()
或imagecreatefrompng()
等函数打开原始图片。
$sourceImage = imagecreatefromjpeg('original.jpg');
步骤2:计算缩放后的尺寸
计算出目标图片的宽度和高度,可以按比例缩放或指定固定的尺寸。
$scale = 0.5; // 缩放比例,此处为缩小一半 $targetWidth = imagesx($sourceImage) * $scale; $targetHeight = imagesy($sourceImage) * $scale;
步骤3:创建目标图片
在创建目标图片时,需要使用imagecreatetruecolor()
函数指定目标图片的尺寸。
$targetImage = imagecreatetruecolor($targetWidth, $targetHeight);
步骤4:缩放图片
使用函数imagecopyresampled()
将原始图片按照指定的尺寸缩放到目标图片中。
imagecopyresampled($targetImage, $sourceImage, 0, 0, 0, 0, $targetWidth, $targetHeight, imagesx($sourceImage), imagesy($sourceImage));
步骤5:保存结果图片
最后,使用imagejpeg()
或imagepng()
imagejpeg($targetImage, 'resized.jpg');Langkah 2: Buat imej sasaranSeterusnya, kita perlu mencipta imej sasaran sebagai hasil potong. Anda boleh menggunakan fungsi
imagecreatetruecolor()
untuk mencipta sumber imej yang sama saiz dengan imej asal. rrreee
Langkah 3: Pangkas imej Gunakan fungsiimagecopy()
untuk menyalin sebahagian daripada imej asal ke imej sasaran. Anda perlu memasukkan sumber imej asal, sumber imej sasaran, koordinat permulaan imej sasaran dan koordinat permulaan imej asal. Berikut adalah contoh menangkap bahagian tengah daripada imej asal. imagejpeg()
untuk menyimpan imej sasaran sebagai fail format JPEG. imagecreatefromjpeg()
atau imagecreatefrompng()
. 🎜rrreee🎜Langkah 2: Kira saiz berskala🎜🎜Kira lebar dan tinggi imej sasaran, yang boleh diskalakan secara berkadar atau nyatakan saiz tetap. 🎜rrreee🎜Langkah 3: Cipta imej sasaran🎜🎜Apabila mencipta imej sasaran, anda perlu menggunakan fungsi imagecreatetruecolor()
untuk menentukan saiz imej sasaran. 🎜rrreee🎜Langkah 4: Skalakan imej 🎜🎜Gunakan fungsi imagecopyresampled()
untuk menskalakan imej asal kepada imej sasaran mengikut saiz yang ditetapkan. 🎜rrreee🎜Langkah 5: Simpan imej yang terhasil🎜🎜Akhir sekali, gunakan fungsi seperti imagejpeg()
atau imagepng()
untuk menyimpan imej sasaran sebagai fail. 🎜rrreee🎜 telah menyelesaikan operasi zum pada gambar. 🎜🎜Ringkasan: Artikel ini memperkenalkan cara menggunakan PHP untuk memangkas dan mengezum imej, termasuk membuka imej asal, mencipta imej sasaran, memotong dan menskalakan imej serta menyimpan imej hasil. Menggunakan fungsi perpustakaan GD yang disediakan oleh PHP, kami boleh melaksanakan pelbagai operasi pada imej dengan mudah. Saya harap artikel ini akan membantu anda memahami dan menggunakan PHP untuk pemprosesan imej. 🎜🎜Rujukan: 🎜🎜🎜Dokumentasi rasmi PHP: http://php.net/manual/en/ref.image.php 🎜🎜Manual rujukan perpustakaan GD: http://php.net/manual/en/book .php🎜🎜Atas ialah kandungan terperinci Cara memangkas dan mengubah saiz imej menggunakan PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!