Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk memproses imej menggunakan fungsi terbina dalam PHP?

Bagaimana untuk memproses imej menggunakan fungsi terbina dalam PHP?

WBOY
WBOYasal
2024-04-22 12:15:02626semak imbas

Fungsi terbina dalam PHP menyediakan fungsi pemprosesan imej yang mudah, yang boleh merealisasikan penskalaan imej, pemangkasan, menambah tera air dan operasi lain. Gunakan imagecopyresampled() untuk mengubah saiz imej, imagecrop() untuk memangkas imej, dan imagecopymerge() untuk menambah tera air.

如何使用 PHP 内置函数处理图像?

Cara menggunakan fungsi terbina dalam PHP untuk memproses imej

PHP menyediakan pelbagai fungsi terbina dalam untuk pemprosesan imej, membolehkan anda memanipulasi imej dengan cepat dan mudah. Artikel ini akan memperkenalkan cara menggunakan fungsi ini untuk melaksanakan operasi biasa pada imej, termasuk penskalaan, pemangkasan, menambah tera air, dsb. Kandungan berikut termasuk kod kes sebenar. . imej:

<?php
$src_image = 'image.jpg';
$dst_image = 'image-scaled.jpg';
$scaled_width = 300;
$scaled_height = 200;

$src = imagecreatefromjpeg($src_image);
$dst = imagecreatetruecolor($scaled_width, $scaled_height);
imagecopyresampled($dst, $src, 0, 0, 0, 0, $scaled_width, $scaled_height, imagesx($src), imagesy($src));
imagejpeg($dst, $dst_image);
?>

Tambah tera air

Fungsi imagecopymerge() boleh menambah tera air: imagecopyresampled() 函数可以缩放图像:

<?php
$src_image = 'image.jpg';
$dst_image = 'image-cropped.jpg';
$crop_x = 100;
$crop_y = 200;
$crop_width = 300;
$crop_height = 200;

$src = imagecreatefromjpeg($src_image);
$dst = imagecrop($src, ['x' => $crop_x, 'y' => $crop_y, 'width' => $crop_width, 'height' => $crop_height]);
imagejpeg($dst, $dst_image);
?>

裁剪图像

imagecrop() 函数可以裁剪图像:

<?php
$main_image = 'image.jpg';
$watermark_image = 'watermark.png';
$output_image = 'image-with-watermark.jpg';
$margin = 50;

$main = imagecreatefromjpeg($main_image);
$watermark = imagecreatefrompng($watermark_image);

$watermark_width = imagesx($watermark);
$watermark_height = imagesy($watermark);

$dst_x = imagesx($main) - $margin - $watermark_width;
$dst_y = imagesy($main) - $margin - $watermark_height;

imagecopymerge($main, $watermark, $dst_x, $dst_y, 0, 0, $watermark_width, $watermark_height, 75);
imagejpeg($main, $output_image);
?>

添加水印

imagecopymerge()rrreee

Atas ialah kandungan terperinci Bagaimana untuk memproses imej menggunakan fungsi terbina dalam PHP?. 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