Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Pemprosesan imej PHP contoh penskalaan imej

Pemprosesan imej PHP contoh penskalaan imej

PHPz
PHPzasal
2023-06-20 22:43:241890semak imbas

Dengan populariti peranti mudah alih dan tapak web, pemprosesan imej telah menjadi bahagian penting dalam pembangunan tapak web. Apabila menggunakan imej pada tapak web, ia selalunya perlu untuk menskalakan imej, jadi penskalaan imej adalah salah satu fungsi paling asas dalam pemprosesan imej. Dalam PHP, kita boleh menggunakan perpustakaan GD untuk melaksanakan penskalaan imej Di bawah saya akan memperkenalkan cara melakukan penskalaan imej dalam PHP melalui contoh tertentu.

Pertama, kita perlu menggunakan perpustakaan GD PHP untuk membuka imej Ini boleh dicapai menggunakan fungsi PHP terbina dalam imagecreatefromjpeg() atau imagecreatefrompng(). Dalam contoh ini, kami akan menggunakan imej dalam format jpeg sebagai contoh untuk menunjukkan. Kod berikut akan membuka imej yang dipanggil "image.jpg":

$image = imagecreatefromjpeg('image.jpg');

Seterusnya, kita boleh menggunakan fungsi imagecreatetruecolor() untuk mencipta imej kosong yang akan bersaiz mengikut penskalaan yang ingin kita lakukan Tentukan nisbah. Dalam contoh ini, saya akan mengecilkan imej asal kepada separuh, jadi imej baharu hendaklah separuh saiz imej asal:

$newWidth = imagesx($image) / 2;
$newHeight = imagesy($image) / 2;
$newImage = imagecreatetruecolor($newWidth, $newHeight);

Seterusnya, kita perlu menggunakan fungsi imagecopyresampled() untuk mengecilkan imej asal ke tengah imej baharu. Fungsi ini menyalin satu imej ke imej lain dan sampel imej baharu mengikut saiz dan perkadaran yang dikehendaki. Kod berikut akan menyalin imej asal kepada imej baharu dan mengurangkannya separuh:

imagecopyresampled($newImage, $image, 0, 0, 0, 0, $newWidth, $newHeight, imagesx($image), imagesy($image));

Dalam kod di atas, kami akan menyalin imej asal kepada imej baharu dan menentukan saiz, kedudukan dan imej asal bagi imej baharu. Akhir sekali, kita perlu menyimpan imej baharu pada fail menggunakan fungsi imagejpeg():

imagejpeg($newImage, 'newImage.jpg');

Kini, kami telah berjaya melaksanakan penskalaan imej melalui PHP. Berikut ialah kod lengkap:

// 打开原图
$image = imagecreatefromjpeg('image.jpg');

// 根据缩放比例计算新图大小
$newWidth = imagesx($image) / 2;
$newHeight = imagesy($image) / 2;

// 创建新图
$newImage = imagecreatetruecolor($newWidth, $newHeight);

// 缩小原图到新图中
imagecopyresampled($newImage, $image, 0, 0, 0, 0, $newWidth, $newHeight, imagesx($image), imagesy($image));

// 保存新图到文件
imagejpeg($newImage, 'newImage.jpg');

Ringkasan:

Dalam artikel ini, kami memperkenalkan cara menskala imej dalam PHP menggunakan perpustakaan GD. Untuk tapak web yang sering perlu berurusan dengan imej, penskalaan imej ialah fungsi asas, yang boleh menjadikan kesan paparan tapak web lebih konsisten pada peranti yang berbeza. Oleh itu, mempelajari cara melakukan pemprosesan imej adalah salah satu kemahiran yang diperlukan untuk setiap pembangun PHP.

Atas ialah kandungan terperinci Pemprosesan imej PHP contoh penskalaan imej. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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