PHP图像处理函数分析
PHP图像处理函数
PHP提供了一组方便的图像处理函数,可以帮助我们实现图片的裁剪、缩放、旋转、水印、压缩等操作。下面我们将分别介绍常用的图像处理函数。
1. 图片资源处理函数
1.1 imagecreatetruecolor()
该函数用于创建指定大小的真彩色图片资源。
语法:resource imagecreatetruecolor(int $width, int $height)。
参数说明:$width——所需创建图片的宽度;$height——所需创建图片的高度。
返回值:返回图像资源。
1.2 imagecreatefromjpeg(), imagecreatefrompng(), imagecreatefromgif()
分别用于从jpg、png、gif格式的图片文件中创建图片资源。
语法:resource imagecreatefromjpeg(string $filename) / resource imagecreatefrompng(string $filename) / resource imagecreatefromgif(string $filename)。
参数说明:$filename——待操作图片的文件名。
返回值:返回图像资源。
1.3 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)。
参数说明:$dst_image——新建图片资源;$src_image——源图片资源;$dst_x、$dst_y——新建图片的起点坐标;$src_x、$src_y——源图片的起点坐标;$dst_w、$dst_h——新建图片的宽度和高度;$src_w、$src_h——源图片的宽度和高度。
返回值:bool。
1.4 imagedestroy()
该函数用于释放指定图片资源占用的内存。
语法:bool imagedestroy(resource $image)。
参数说明:$image——需释放内存的图片资源。
返回值:bool。
2. 图片尺寸处理函数
2.1 imagesy(), imagesx()
分别用于获取指定图片资源的高度和宽度。
语法:int imagesy(resource $image) / int imagesx(resource $image)。
参数说明:$image——待操作图片的资源。
返回值:int。
2.2 imagescale()
该函数用于缩放指定图片资源。
语法:resource imagescale(resource $image , int $new_width [, int $new_height = -1 [, int $mode = IMG_BILINEAR_FIXED ]] )。
参数说明:$image——待操作的图片资源;$new_width——缩放后的宽度;$new_height——缩放后的高度,可缺省,默认为-1;$mode——缩放模式,可缺省,默认为IMG_BILINEAR_FIXED。
返回值:返回缩放后的图片资源。
3. 图片旋转处理函数
3.1 imagerotate()
该函数用于旋转指定图片资源。
语法:resource imagerotate(resource $src_image , float $angle , int $bgd_color [, int $ignore_transparent = 0 ] )。
参数说明:$src_image——待操作的图片资源;$angle——旋转角度;$bgd_color——旋转后图像的背景色;$ignore_transparent——是否忽略透明色,默认为0,即不忽略透明色。
返回值:返回旋转后的图片资源。
4. 图片水印处理函数
4.1 imagecopy()
该函数用于将指定图片资源作为水印覆盖到另一张图片资源上。
语法:bool imagecopy(resource $dst_image , resource $src_image , int $dst_x , int $dst_y , int $src_x , int $src_y , int $src_w , int $src_h )。
参数说明:$dst_image——目标图片资源;$src_image——水印图片资源;$dst_x、$dst_y——目标图片上水印位置的起始坐标;$src_x、$src_y——水印图片上需要操作的起始坐标;$src_w、$src_h——水印图片需要操作的宽度和高度。
返回值:bool。
4.2 imagestring()
该函数用于向指定图片资源中绘制文本水印。
语法:bool imagestring(resource $image , int $font , int $x , int $y , string $string , int $color )。
参数说明:$image——操作的图片资源;$font——字体号码,1-5代表不同字体,默认为1;$x,$y——绘制文本水印的左上角坐标;$string——需要绘制的文本内容;$color——文本颜色,可用RGB值。
返回值:bool。
5. 图片压缩处理函数
5.1 imagejpeg(), imagepng()
分别用于将指定图片资源保存到JPEG、PNG格式的文件中。
语法:bool imagejpeg(resource $image, [ $filename [, $quality ]] ) / bool imagepng(resource $image, [ $filename[, $compression [, $filters ]]] )。
参数说明:$image——操作的图片资源;$filename——压缩后的文件名,可缺省,默认为输出到浏览器;$quality——JPEG图片的压缩质量,取值0-100,默认为75;$compression——PNG图片的压缩级别,取值0-9,默认为6;$filters——PNG图片的滤波器类型,默认为PNG_ALL_FILTERS。
返回值:bool。
总结
以上介绍了PHP中常用的图像处理函数,可以方便快捷地实现图片的大小调整、旋转、水印、压缩等操作,为网页制作提供了很好的支持。
