色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

php extension gd

張吉惟1年前9瀏覽0評論

GD擴展是PHP常用的圖像處理擴展,它可以讓我們通過PHP生成圖片、縮略圖等等。GD擴展的操作也是非常簡單的,下面我們就來一起學習一下GD擴展的使用。

首先我們要在php.ini配置文件中開啟GD擴展,這樣我們才能使用它。找到php.ini文件中的extension選項,在這個選項中添加下面這行代碼:

extension=php_gd2.dll

在配置好GD擴展后,我們就可以開始使用它了。下面我們來實現一個非常基礎的GD擴展的例子:創建一張空白(背景為白色)的圖片。首先我們要創建一個畫布,并賦予它寬高和背景顏色,然后將畫布保存成一張圖片。

$width = 300; //畫布寬度
$height = 200; //畫布高度
$im = imagecreatetruecolor($width, $height); //創建畫布
$white = imagecolorallocate($im, 255, 255, 255); //背景顏色
imagefill($im, 0, 0, $white); //填充背景顏色
header('Content-type: image/png'); //告訴瀏覽器這是一張png格式的圖片
imagepng($im); //將畫布輸出為一張png格式的圖片
imagedestroy($im); //銷毀畫布

上述代碼的原理非常簡單,我們首先使用imagecreatetruecolor()函數創建一個指定寬度和高度的圖片,然后使用imagecolorallocate()函數設置背景顏色,接著使用imagefill()函數進行填充,最后我們使用header()函數告訴瀏覽器這是一張png格式的圖片,最后使用imagepng()函數將畫布輸出為一張png格式的圖片,銷毀畫布。

除了創建一張空白的圖片之外,GD擴展還可以幫助我們進行一些圖片處理,比如縮放圖片、旋轉圖片、水印圖片等等。下面我們來分別介紹一下這幾個功能的實現。

縮放圖片:

$src_file = 'test.jpg'; //原圖路徑
$dst_file = 'test_thumb.jpg'; //縮略圖路徑
$thumb_width = 200; //縮略圖寬度
$thumb_height = 150; //縮略圖高度
$src_image = imagecreatefromjpeg($src_file); //創建原圖畫布
$dst_image = imagecreatetruecolor($thumb_width, $thumb_height); //創建縮略圖畫布
imagecopyresized($dst_image, $src_image, 0, 0, 0, 0, $thumb_width, $thumb_height, imagesx($src_image), imagesy($src_image)); //拷貝并縮放原圖
imagejpeg($dst_image, $dst_file); //保存縮略圖
imagedestroy($src_image); //銷毀原圖畫布
imagedestroy($dst_image); //銷毀縮略圖畫布

旋轉圖片:

$src_file = 'test.jpg'; //原圖路徑
$src_image = imagecreatefromjpeg($src_file); //創建原圖畫布
$dst_image = imagerotate($src_image, 45, 0); //旋轉原圖
header('Content-type: image/jpeg'); //告訴瀏覽器這是一張jpg格式的圖片
imagejpeg($dst_image); //將畫布輸出為一張jpg格式的圖片
imagedestroy($src_image); //銷毀原圖畫布
imagedestroy($dst_image); //銷毀旋轉后的畫布

水印圖片:

$src_file = 'test.jpg'; //原圖路徑
$watermark_file = 'watermark.png'; //水印圖片路徑
$dst_file = 'test_watermark.jpg'; //加了水印后的圖片路徑
//打開圖片
$src_image = imagecreatefromjpeg($src_file);
$watermark_image = imagecreatefrompng($watermark_file);
//獲取圖片尺寸
$src_width = imagesx($src_image);
$src_height = imagesy($src_image);
$watermark_width = imagesx($watermark_image);
$watermark_height = imagesy($watermark_image);
//計算水印位置
$pos_x = $src_width - $watermark_width - 10;
$pos_y = $src_height - $watermark_height - 10;
//添加水印
imagecopy($src_image, $watermark_image, $pos_x, $pos_y, 0, 0, $watermark_width, $watermark_height);
//保存圖片
imagejpeg($src_image, $dst_file);
//銷毀畫布
imagedestroy($src_image);
imagedestroy($watermark_image);

上述代碼中我們首先使用imagecreatefromjpeg()函數打開原圖和水印圖片,并獲取它們的尺寸。然后我們計算水印的位置并使用imagecopy()函數將水印添加到原圖上,最后使用imagejpeg()函數保存合成后的圖片,銷毀畫布。

以上就是GD擴展的一些基礎用法,它可以幫助我們在PHP中進行圖片的生成和處理,滿足我們對圖像處理的需求。