将源图像装载到一个PHP变量中。

确定原有图像的高度和宽度。

创建一个具有精确尺寸的空缺缩略图。

php水印PHP 创立缩略图和水印图片 Ruby

复制原有图像到空缺缩略图。

利用精确的内容类型显示缩略图。

让我们为一副jpeg格式的照片创建一个缩略图。

(1)设置源图像的路径和期望的宽度和高度像素值。

<?php$sourceImage = 'images/1.jpg';$thumbWidth = 300;$thumbHeight = 300;

(2)利用imagecreatefromjpeg创建一个jpeg图像, 通过getimagesize函数返回图像的宽度和高度

$original = imagecreatefromjpeg($sourceImage);$dims = getimagesize($sourceImage);

(3)利用imagecreatetruecolor函数创建一个空缺图像(以PHP变量$thumb的形式存在内存中), 缩略图将被放置在个中。

$thumb = imagecreatetruecolor($thumbWidth,$thumbHeight);

(4)通过imagecopyresampled函数天生缩略图。
sampled: 取样 resampled: 重新取样

imagecopyresampled( $thumb, $original, 0, 0, 0, 0, $thumbWidth, $thumbHeight, $dims[0], $dims[1] );

imagecopyresampled函数将图像的一个调度大小后的版本放置到空缺缩略图中, 以这种方法重新取样能够确保图像平滑地调度大小。

参数$thunb定义目的图像;参数$original定义源图像。
后面的4个参数代表目的和源图像部分的X和Y坐标, 坐标系原点位于左上角。

(5)通过header()函数定义内容类型头(Content-type: image/jpeg), 利用imagejpeg()函数输出完成的缩略图:

header( "Content-type: image/jpeg" );imagejpeg( $thumb );?>

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)

dst_image 目标图象连接资源。

src_image 源图象连接资源。

dst_x 目标 X 坐标点。

dst_y 目标 Y 坐标点。

src_x 源的 X 坐标点。

src_y 源的 Y 坐标点。

dst_w 目标宽度。

dst_h 目标高度。

src_w 源图象的宽度。

src_h 源图象的高度。

返回值: 成功时返回TRUE, 或者在失落败时返回FALSE 。