Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk mengeluarkan imej dalam PHP? (Penjelasan terperinci tentang legenda)
Dalam artikel sebelumnya, saya membawakan anda "Bagaimana untuk memuat naik fail dengan PHP? Anda akan faham selepas membacanya! 》, yang memperkenalkan anda secara terperinci cara memuat naik fail dalam PHP Dalam artikel ini, mari kita lihat pengetahuan berkaitan pemprosesan imej dalam PHP.
Pemprosesan imej ialah sesuatu yang sering ditemui dalam kerja PHP Kami menghadapi banyak senario di mana kami perlu memproses imej, seperti kod pengesahan imej, tera air imej, dll. Sebenarnya, fokus pembelajaran pemprosesan imej sebenarnya adalah untuk mempelajari fungsi sistem GD dalam PHP Pemprosesan imej dalam PHP memerlukan sokongan perpustakaan GD, jadi mari kita lihat dahulu pengetahuan yang berkaitan tentang perpustakaan GD.
Pustaka GD
Pustaka GD boleh difahami sebagai perpustakaan fungsi untuk mencipta imej grafik sebenarnya Ia ditulis dalam bahasa C dan boleh digunakan dalam PHP Selain PHP, ia juga boleh digunakan dalam bahasa Perl dan pustaka GD menyediakan banyak antara muka untuk memproses imej PHP Perpustakaan boleh melukis pelbagai imej grafik, carta statistik, dan kod pengesahan imej pada halaman, dan juga boleh dilaksanakan menggunakan perpustakaan GD.
Contoh adalah seperti berikut:
<?php phpinfo(); ?>
Atau anda boleh menggunakan:
Selepas memasukkan, jalankan jika hasil output adalah seperti yang ditunjukkan dalam rajah di bawah , ini juga bermakna mesin semasa menyokongnya melalui GD.<?php print_r(gd_info()); ?>
Jika ia tidak dipasang, anda juga boleh menukar item "extension=php_gd2.dll" dalam fail konfigurasi php.ini di bawah sistem Windows Sebelum ini kaedah pemadaman ulasan selesai.
Dalam PHP, operasi pemprosesan imej melalui perpustakaan GD secara amnya dibahagikan kepada 4 langkah asas:
Buat kanvasSemua lukisan dan pemprosesan imej kami perlu dilakukan pada imej latar belakang, iaitu kanvas, yang boleh difahami sebagai Untuk imej, kami mempunyai kawasan sementara dalam ingatan sebagai kanvas untuk menyimpan maklumat imej Operasi imej masa hadapan akan dilakukan pada kawasan ini, iaitu kanvas.
digunakan untuk mencipta kanvas format sintaksnya adalah seperti berikut: imagecreate()
imagecreatetruecolor()
imagecreate(int $width, int $height) imagecreatetruecolor(int $width, int $height)
Kedua-dua fungsi ini boleh digunakan untuk mencipta kanvas, tetapi perbezaannya ialah julat warna yang boleh mereka tampung adalah berbeza.
Contohnya adalah seperti berikut:
<?php $img = @imagecreatetruecolor(120, 20) or die('画布创建失败!'); ?>Hasil keluaran:
<?php $img = @imagecreatetruecolor(120, 20) or die('画布创建失败!'); echo '画布的宽度为:'.imagesx($img).'像素'; echo '<br>画布的高度为:'.imagesy($img).'像素'; ?>
Daripada ini kami telah selesai membuat kanvas .
Selain menggunakan dua fungsi di atas untuk mencipta kanvas, anda juga boleh mencipta imej melalui fail atau URL dengan cara berikut:
imagecreatefromgif()
imagecreatefromjpeg()
imagecreatefrompng()
Imej outputimagecreatefromwbmp()
: Keluarkan imej format JPEG ke penyemak imbas atau fail
imagegif()
imagegif(resource $image[, string $filename]) imagejpeg(resource $image[, string $filename[, int $quality]]) imagepng(resource $image[, string $filename])
其中,$image为创建的一个图像资源;$filename表示为参数,用来设置文件需要保存的路径。
示例如下:
首先我在根目录中已经保存了一个名为php.png的图像文件
<?php header('Content-type:image/jpeg'); $image= imagecreatefrompng('php.png'); imagepng($image); ?>
输出结果:
通过imagecreatefrompng()函数和imagepng()成功的输出了一个格式为png的图片。
释放图像资源
通过上述示例已经成功的输出了图片,在图片的资源使用完成后,通常需要释放图像处理时所占用的内存,那应该怎样操作呢?
在PHP中我们通过imagedestroy() 函数来释放图像资源,语法格式如下:
imagedestroy(resource $image)
其中$image表示需要释放资源的图像
示例如下:
<?php header('Content-type:image/jpeg'); $image= imagecreatefrompng('php.png'); imagepng($image); imagedestroy($image); ?>
因为释放图像资源的操作是没有输出内容的,所以就不列出输出结果了。
推荐学习:《PHP视频教程》
Atas ialah kandungan terperinci Bagaimana untuk mengeluarkan imej dalam PHP? (Penjelasan terperinci tentang legenda). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!