Rumah pembangunan bahagian belakang tutorial php Bagaimana untuk menggunakan perpustakaan GD untuk memproses imej dalam PHP?

Bagaimana untuk menggunakan perpustakaan GD untuk memproses imej dalam PHP?

Sep 13, 2023 pm 01:28 PM
Pemprosesan imej php gd perpustakaan Suntingan gambar

Bagaimana untuk menggunakan perpustakaan GD untuk memproses imej dalam PHP?

Bagaimana untuk menggunakan perpustakaan GD untuk memproses imej dalam PHP?

Pustaka GD ialah pustaka pemprosesan imej yang berkuasa Menggunakan perpustakaan GD dalam PHP boleh melaksanakan beberapa fungsi pemprosesan imej yang mudah, seperti pemangkasan, penskalaan, menambah tera air, dsb. Artikel ini akan memperkenalkan cara menggunakan perpustakaan GD untuk memproses imej dalam PHP dan memberikan beberapa contoh kod khusus.

Pertama, pastikan sambungan perpustakaan GD didayakan pada pelayan. Anda boleh mencari dan menyahkomen "extension=gd" dalam fail php.ini, dan kemudian mulakan semula pelayan.

Seterusnya, mari lihat beberapa operasi pemprosesan imej biasa.

  1. Mencipta lakaran kenit

Untuk mencipta lakaran kenit, kami menggunakan fungsi imagecopyresampled dalam perpustakaan GD untuk mengecilkan imej asal kepada saiz yang ditentukan. Berikut ialah contoh kod:

function createThumbnail($src, $dst, $width, $height) {
    $src_img = imagecreatefromjpeg($src); // 从原图像创建一个图像资源
    $dst_img = imagecreatetruecolor($width, $height); // 创建一个指定大小的新图像资源
    $src_width = imagesx($src_img); // 原图像的宽度
    $src_height = imagesy($src_img); // 原图像的高度
    $ratio = max($width / $src_width, $height / $src_height); // 计算缩放比例
    $new_width = ceil($src_width * $ratio); // 计算缩略图的宽度
    $new_height = ceil($src_height * $ratio); // 计算缩略图的高度
    $x_offset = ($new_width - $width) / 2; // 计算水平偏移量
    $y_offset = ($new_height - $height) / 2; // 计算垂直偏移量
    imagecopyresampled($dst_img, $src_img, -$x_offset, -$y_offset, 0, 0, $new_width, $new_height, $src_width, $src_height); // 缩放图像
    imagejpeg($dst_img, $dst); // 将缩略图保存到指定路径
    imagedestroy($src_img); // 销毁图像资源
    imagedestroy($dst_img);
}

// 示例使用
$source_image = 'original.jpg'; // 原图像路径
$thumbnail_image = 'thumbnail.jpg'; // 生成的缩略图路径
$thumbnail_width = 200; // 缩略图宽度
$thumbnail_height = 150; // 缩略图高度
createThumbnail($source_image, $thumbnail_image, $thumbnail_width, $thumbnail_height);
Salin selepas log masuk
  1. Tambah tera air

Untuk menambah tera air, kami menggunakan fungsi salinan imej dalam perpustakaan GD untuk menindih imej tera air pada imej asal pada kedudukan yang ditentukan. Berikut ialah kod sampel:

function addWatermark($src, $dst, $watermark) {
    $src_img = imagecreatefromjpeg($src); // 从原图像创建一个图像资源
    $watermark_img = imagecreatefrompng($watermark); // 从水印图像创建一个图像资源
    $src_width = imagesx($src_img); // 原图像的宽度
    $src_height = imagesy($src_img); // 原图像的高度
    $watermark_width = imagesx($watermark_img); // 水印图像的宽度
    $watermark_height = imagesy($watermark_img); // 水印图像的高度
    $x_offset = $src_width - $watermark_width - 10; // 水印图像的水平偏移量
    $y_offset = $src_height - $watermark_height - 10; // 水印图像的垂直偏移量
    imagecopy($src_img, $watermark_img, $x_offset, $y_offset, 0, 0, $watermark_width, $watermark_height); // 将水印图像覆盖在原图像上
    imagejpeg($src_img, $dst); // 将带有水印的图像保存到指定路径
    imagedestroy($src_img); // 销毁图像资源
    imagedestroy($watermark_img);
}

// 示例使用
$source_image = 'original.jpg'; // 原图像路径
$watermark_image = 'watermark.png'; // 水印图像路径
$watermarked_image = 'watermarked.jpg'; // 带有水印的图像路径
addWatermark($source_image, $watermarked_image, $watermark_image);
Salin selepas log masuk

Melalui kod sampel di atas, kita boleh menggunakan pustaka GD untuk memproses imej dalam PHP untuk menjana lakaran kecil dan menambah tera air. Sudah tentu, perpustakaan GD juga menyokong lebih banyak operasi pemprosesan imej, seperti putaran imej, penambahan sempadan imej, dll., dan boleh dikembangkan mengikut keperluan sebenar.

Atas ialah kandungan terperinci Bagaimana untuk menggunakan perpustakaan GD untuk memproses imej dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Pemprosesan imej Golang: cara melaksanakan pemetaan imej kecerunan warna dan skala kelabu Pemprosesan imej Golang: cara melaksanakan pemetaan imej kecerunan warna dan skala kelabu Aug 19, 2023 am 08:53 AM

Pemprosesan imej Golang: Cara melaksanakan pemetaan imej kecerunan warna dan skala kelabu Pengenalan: Dengan perkembangan media digital, pemprosesan imej telah menjadi bahagian yang amat diperlukan dalam kehidupan seharian kita. Dalam bahasa Go, kita boleh menggunakan beberapa pustaka untuk pemprosesan imej, seperti github.com/disintegration/imaging. Artikel ini akan memperkenalkan cara menggunakan pustaka ini untuk melaksanakan pemetaan imej kecerunan warna dan skala kelabu. 1. Perkenalkan perpustakaan Pertama, kita perlu memperkenalkan github.com/ dalam projek Go

Cara menggunakan Golang untuk meningkatkan sempadan dan tepi imej Cara menggunakan Golang untuk meningkatkan sempadan dan tepi imej Aug 18, 2023 pm 09:46 PM

Gambaran keseluruhan cara menggunakan Golang untuk meningkatkan sempadan dan tepi pada imej: Dalam bidang pemprosesan imej, peningkatan sempadan dan tepi ialah teknologi yang biasa digunakan yang boleh meningkatkan kesan visual imej dengan berkesan dan meningkatkan ketepatan pengecaman imej. Artikel ini akan memperkenalkan cara menggunakan bahasa Golang untuk melaksanakan operasi peningkatan jidar dan tepi pada imej dan memberikan contoh kod yang sepadan. Nota: Artikel ini menganggap bahawa anda telah memasang dan mengkonfigurasikan persekitaran pembangunan Golang dalam persekitaran setempat anda. Import pakej pergantungan Pertama, kita perlu mengimport pakej pergantungan berikut untuk operasi pemprosesan imej

Nasihat pembangunan Laravel: Bagaimana untuk mengoptimumkan pemprosesan imej dan caching Nasihat pembangunan Laravel: Bagaimana untuk mengoptimumkan pemprosesan imej dan caching Nov 22, 2023 am 09:17 AM

Cadangan Pembangunan Laravel: Cara Mengoptimumkan Pemprosesan Imej dan Caching Pengenalan Dalam pembangunan web moden, pemprosesan imej dan caching adalah isu biasa dan penting. Mengoptimumkan pemprosesan imej dan strategi caching bukan sahaja meningkatkan prestasi tapak web dan pengalaman pengguna, tetapi juga mengurangkan penggunaan lebar jalur dan beban pelayan. Artikel ini akan meneroka kaedah dan cadangan tentang cara mengoptimumkan pemprosesan imej dan caching dalam pembangunan Laravel. 1. Pilih format imej yang sesuai Memilih format imej yang sesuai adalah langkah pertama dalam mengoptimumkan pemprosesan imej. Format imej biasa termasuk JPEG dan PNG

Bagaimana untuk mengaburkan imej menggunakan PHP Bagaimana untuk mengaburkan imej menggunakan PHP Aug 18, 2023 pm 02:13 PM

Cara menggunakan PHP untuk mengaburkan imej Pengaburan imej ialah operasi biasa dalam pemprosesan imej, yang boleh menambah kesan kabur pada imej untuk menjadikannya kelihatan lebih lembut dan artistik. Dalam PHP, kita boleh menggunakan perpustakaan GD untuk mengaburkan imej Berikut akan memperkenalkan cara menggunakan PHP untuk mengaburkan imej, dan melampirkan contoh kod yang sepadan. Memasang perpustakaan GD Sebelum memulakan, anda perlu memastikan bahawa pelayan anda telah memasang pustaka GD. Anda boleh melakukan ini dengan menambahkan fungsi phpinfo() pada fail PHP anda

Cara menggunakan Golang untuk menutup dan menutup kesan pada gambar Cara menggunakan Golang untuk menutup dan menutup kesan pada gambar Aug 27, 2023 am 09:07 AM

Cara menggunakan Golang untuk menutup dan menutup kesan pada gambar Dalam pemprosesan imej moden, menutup dan menutup kesan adalah kesan khas yang sangat biasa. Artikel ini akan memperkenalkan cara menggunakan Golang untuk menutup dan menutup kesan pada imej. Memasang Perpustakaan yang Diperlukan Sebelum kita mula, kita perlu memasang beberapa perpustakaan yang diperlukan untuk memproses imej. Jalankan arahan berikut untuk memasang perpustakaan yang diperlukan: goget-ugithub.com/fogleman/gggoget-ugolang.org/x/im

Bagaimana untuk menambah bunyi pada gambar menggunakan Python Bagaimana untuk menambah bunyi pada gambar menggunakan Python Aug 19, 2023 am 11:21 AM

Cara menggunakan Python untuk menambah hingar pada gambar Pengenalan: Dengan perkembangan teknologi, pemprosesan imej digital telah menjadi kaedah pemprosesan imej yang biasa. Antaranya, menambah hingar pada imej adalah langkah penting dalam pemprosesan imej Dengan menambah hingar, realisme dan kerumitan imej dapat dipertingkatkan. Artikel ini akan memperkenalkan cara menggunakan Python untuk menambah hingar pada imej dan memberikan contoh kod yang berkaitan. 1. Memahami hingar imej Bunyi imej merujuk kepada gangguan rawak yang menjejaskan kualiti dan kejelasan imej. Bunyi imej biasa termasuk bunyi Gaussian,

Bagaimana untuk mengendalikan cache imej dan pramuat dalam Vue? Bagaimana untuk mengendalikan cache imej dan pramuat dalam Vue? Aug 25, 2023 pm 04:21 PM

Bagaimana untuk mengendalikan caching imej dan pramuat dalam Vue? Apabila membangunkan projek Vue, kami selalunya perlu berurusan dengan caching dan pramuat imej untuk meningkatkan prestasi tapak web dan pengalaman pengguna. Artikel ini akan memperkenalkan beberapa kaedah mengendalikan caching imej dan pramuat dalam Vue, dan memberikan contoh kod yang sepadan. 1. Caching imej menggunakan lazy loading imej (LazyLoading) Image lazy loading adalah teknologi yang melambatkan memuatkan imej, iaitu imej tidak dimuatkan sehingga halaman tersebut menatal ke lokasi imej. Ini mengurangkan permintaan untuk sumber imej apabila halaman pertama kali dimuatkan

Cara menggunakan Laravel untuk melaksanakan fungsi pemprosesan imej Cara menggunakan Laravel untuk melaksanakan fungsi pemprosesan imej Nov 04, 2023 pm 12:46 PM

Cara menggunakan Laravel untuk melaksanakan fungsi pemprosesan imej memerlukan contoh kod khusus Pada masa kini, dengan perkembangan Internet, pemprosesan imej telah menjadi bahagian yang sangat diperlukan dalam pembangunan laman web. Laravel ialah rangka kerja PHP yang popular yang membekalkan kita dengan banyak alatan mudah untuk memproses imej. Artikel ini akan memperkenalkan cara menggunakan Laravel untuk melaksanakan fungsi pemprosesan imej dan memberikan contoh kod khusus. Pasang LaravelInterventionImageInterven

See all articles