background image

$imgsrc

 = @ImageCreateFromJPEG(

$srcFile

); 

break

case

 3: 

$imgsrc

 = @ImageCreateFromPNG(

$srcFile

); 

break

$srcW

 = ImageSX(

$imgsrc

); 

$srcH

 = ImageSY(

$imgsrc

); 

$ni

 = ImageCreate(

$dstW

,

$dstH

); 

ImageCopyResized(

$ni

,

$imgsrc

,0,0,0,0,

$dstW

,

$dstH

,

$srcW

,

$srcH

); 

Imagegif(

$ni

,

$dstFile

); 

// 如果需要输出到浏览器,那么将上一句改为 ImageJpeg($ni); 
// 如果需要其他格式的图片,改动最后一句就可以了 


?> 
 
在这个例子中,首先通过

getimagesize

()函数获得源图片的情况,再用 imagecreatefromgif()、

 

imagecreatefromjpeg()或 imagecreatefrompng()创建一个源位图

$imgsrc

,然后用

 

imagecreate()函数创建一个目标位图,其长、宽各是源位图的一半。然后调用
imagecopyresized() 
函数,将源位图缩小后拷贝到目标位图中,最后再用

imagegif()函数生成缩略图。 

这里所用到的图形处理函数就是由安装的

GD 库提供的,现对其分别进行说明。首先 

介绍

getimagesize

()函数,其标准语法如下。 

语法:

array

 

getimagesize

(string filename,

array

 [imageinfo]); 

返回值:数组

 

函数种类:图形处理

 

内容说明:本函数可用来取得

GIF、JPEG 及 PNG 3 种 WWW 上图片的高与宽,不需要安装

GD library 就可以便用本函数。返回的数组有 4 个元素,返回数组的第一个元素(索引值 0)是
图片的高度,单位是像素

(pixel);第二个元素(索引值 1)是图片的宽度;第三个元素(索引值

2)是图片的文件格式,其值 1 为 GIF 格式、2 为 JPEG/JPG 格式、3 为 PNG 格式; 
第四个元素

(索引值 3)为图片的高与宽字符串,height=xxx width=yyy。 

通过

getimagesize

()函数的应用,能轻易获取图片的各种信息。下面给大家举一个获取图片

宽度、高度、格式、文件大小的信息的例子,来进一步领会

getimagesize

()函数的使用 技巧。

程序

imginfo 如程序清单 12—6 所示。 

 
程序清单

12-6 imginfo.php 

 代码如下:
 
<?php 

function

 getImageInfo(

$img

//$img 为图像文件绝对路径 

$img_info

 = 

getimagesize

(

$img

); 

switch

 (

$img_info

[2])