Cara memangkas dan mengubah saiz imej menggunakan PHP

王林
Lepaskan: 2023-08-18 13:06:01
asal
1931 orang telah melayarinya

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');
Salin selepas log masuk
Salin selepas log masuk

步骤2:创建目标图片

接下来,我们需要创建一个目标图片,作为裁剪后的结果。可以使用imagecreatetruecolor()函数创建一个与原始图片一样大小的图片资源。

$width = imagesx($sourceImage);
$height = imagesy($sourceImage);

$targetImage = imagecreatetruecolor($width, $height);
Salin selepas log masuk

步骤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);
Salin selepas log masuk

步骤4:保存结果图片

最后,我们需要将裁剪后的结果保存到文件中。使用imagejpeg()函数将目标图片保存为JPEG格式的文件。

imagejpeg($targetImage, 'cropped.jpg');
Salin selepas log masuk

至此,我们完成了对图片的裁剪操作。

二、缩放图片

缩放图片是指按照一定比例改变图片的尺寸。在PHP中,我们可以使用GD库提供的函数来实现图片的缩放。

步骤1:打开原始图片

同样,我们首先需要使用imagecreatefromjpeg()imagecreatefrompng()等函数打开原始图片。

$sourceImage = imagecreatefromjpeg('original.jpg');
Salin selepas log masuk
Salin selepas log masuk

步骤2:计算缩放后的尺寸

计算出目标图片的宽度和高度,可以按比例缩放或指定固定的尺寸。

$scale = 0.5; // 缩放比例,此处为缩小一半
$targetWidth = imagesx($sourceImage) * $scale;
$targetHeight = imagesy($sourceImage) * $scale;
Salin selepas log masuk

步骤3:创建目标图片

在创建目标图片时,需要使用imagecreatetruecolor()函数指定目标图片的尺寸。

$targetImage = imagecreatetruecolor($targetWidth, $targetHeight);
Salin selepas log masuk

步骤4:缩放图片

使用函数imagecopyresampled()将原始图片按照指定的尺寸缩放到目标图片中。

imagecopyresampled($targetImage, $sourceImage, 0, 0, 0, 0, $targetWidth, $targetHeight, imagesx($sourceImage), imagesy($sourceImage));
Salin selepas log masuk

步骤5:保存结果图片

最后,使用imagejpeg()imagepng()

imagejpeg($targetImage, 'resized.jpg');
Salin selepas log masuk
Langkah 2: Buat imej sasaran

Seterusnya, 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 fungsi imagecopy() 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.
    rrreee
  • Langkah 4: Simpan imej yang terhasil
  • Akhir sekali, kita perlu menyimpan hasil yang dipangkas ke fail. Gunakan fungsi imagejpeg() untuk menyimpan imej sasaran sebagai fail format JPEG.
  • rrreee
Pada ketika ini, kami telah menyelesaikan operasi pemangkasan imej. 🎜🎜2. Zum gambar🎜🎜Zoom gambar bermaksud menukar saiz gambar mengikut nisbah tertentu. Dalam PHP, kita boleh menggunakan fungsi yang disediakan oleh perpustakaan GD untuk mencapai penskalaan imej. 🎜🎜Langkah 1: Buka imej asal🎜🎜Begitu juga, kita perlu membuka imej asal terlebih dahulu menggunakan fungsi seperti 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!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!