Fail pengendalian
<?php /*打开图片*/ $src = "https://img.php.cn/upload/course/000/000/004/581454f755fb1195.jpg"; $info = getimagesize($src); $type = image_type_to_extension($info[2],false); $fun = "imagecreatefrom{$type}"; $image = $fun($src); /*操作图片*/ //在内存中建立一个宽300高200的真色彩图片 $image_thumb = imagecreatetruecolor(300,200); //将原图复制到新建的真色彩图片上,并且按照一定比例压缩(参数1:真色彩图片,参数2:原图,参数3,4,5,6:原图和真色彩图的起始点,参数7,8:原图和真色彩图的结束点,参数9:原图宽,参数10:原图高) imagecopyresampled($image_thumb,$image,0,0,0,0,300,200,$info[0],$info[1]); //销毁原始图片 imagedestroy($image); ?>
Penjelasan kod:
Mula-mula buat kanvas warna dengan saiz yang ditentukan dalam ingatan.
imagecreatetruecolor() Mengembalikan pengecam imej, mewakili imej bersaiz Imej hitam x_size dan y_size.
Gunakan fungsi imagecopyresampled()
bool imagecopyresampled ( resource $dst_image , resource $src_image , int $dst_x , int $dst_y , int $src_x , int $src_y , int $dst_w , int $dst_h , int $src_w , int $src_h )
imagecopyresampled() untuk menyalin kawasan segi empat sama dalam satu imej ke imej lain, dengan lancar memasukkan nilai piksel. saiz imej dikecilkan sambil masih mengekalkan ketajaman yang hebat.
dst_image
Sasarkan sumber sambungan imej.
src_image
Sumber sambungan imej sumber.
dst_x
Sasaran titik koordinat X.
dst_y
Sasaran titik koordinat Y.
src_x
Titik koordinat X sumber.
src_y
Titik koordinat Y bagi sumber.
dst_w
Lebar sasaran.
dst_h
Ketinggian sasaran.
src_w
Lebar imej sumber.
src_h
Ketinggian imej sumber.
Kemudian musnahkan imej yang disalin dalam ingatan.
bahagian seterusnya