imagecreatefromgif()— 从 GIF 文件或 URL 新建一图像
说明
resource imagecreatefromgif ( string $filename )
imagecreatefromgif() 返回一图像标识符,代表了从给定的文件名取得的图像。
imagecreatefromgif() 在失败时返回一个空字符串,并且输出一条错误信息,不幸地在浏览器中显示为断链接。
imagecopy()
imagecopy() 函数用于拷贝图像或图像的一部分,成功返回 TRUE ,否则返回 FALSE 。
语法:
bool imagecopy( resource dst_im, resource src_im, int dst_x, int dst_y, int src_x, int src_y,
int src_w, int src_h )
参数说明:参数说明
dst_im目标图像
src_im被拷贝的源图像
dst_x目标图像开始 x 坐标
dst_y目标图像开始 y 坐标,x,y同为 0 则从左上角开始
src_x拷贝图像开始 x 坐标
src_y拷贝图像开始 y 坐标,x,y同为 0 则从左上角开始拷贝
src_w(从 src_x 开始)拷贝的宽度
src_h(从 src_y 开始)拷贝的高度
用imagecreatetruecolor(int x,int y)建立的是一幅大小为 x和 y的黑色图像(默认为黑色),如想改变背景颜色则需要用填充颜色函数imagefill($img,0,0,$color);
imagecreate 新建一个空白图像资源,用imagecolorAllocate()添加背景色
上面两个函数只不过是一个功能的两种方法
具体用法见以下两种方法:
<?php
$img = imagecreatetruecolor(100,100); //创建真彩图像资源
$color = imagecolorAllocate($img,200,200,200); //分配一个灰色
imagefill($img,0,0,$color); // 从左上角开始填充灰色
header('content-type:image/jpeg'); //jpg格式
imagejpeg($img); //显示灰色的方块
?>
<?php
$img = imagecreate(100,100);
$color = imagecolorallocate($img,200,200,200);
header('content-type:image/jpeg'); //jpg格式
imagejpeg($img); //显示灰色的方块
?>
bool imagejpeg ( resource image [, string filename [, int quality]] )
imagejpeg() 从 image 图像以 filename 为文件名创建一个 JPEG 图像。image 参数是 imagecreatetruecolor() 函数的返回值。
filename 参数为可选,如果省略,则原始图像流将被直接输出。要省略 filename 参数而提供 quality 参数,使用空字符串('')。通过 header() 发送 Content-type: image/jpeg 可以使 PHP 脚本直接输出 JPEG 图像。
magerotate — 用给定角度旋转图像
说明
resource imagerotate ( resource $src_im , float $angle , int $bgd_color [, int $ignore_transparent ] )
将 src_im 图像用给定的 angle 角度旋转。bgd_color 指定了旋转后没有覆盖到的部分的颜色。
旋转的中心是图像的中心,旋转后的图像会按比例缩小以适合目标图像的大小——边缘不会被剪去。
如果 ignore_transparent 被设为非零值,则透明色会被忽略(否则会被保留)。此参数是 PHP 5.1 新加的。
Example #1 将图像旋转 180 度
本例将把一幅图像旋转 180 度——上下颠倒。
// File and rotation
$filename = 'test.jpg';
$degrees = 180;
// Content type
header('Content-type: image/jpeg');
// Load
$source = imagecreatefromjpeg($filename);
// Rotate
$rotate = imagerotate($source, $degrees, 0);
// Output
imagejpeg($rotate);
php取得某像素的颜色索引值@php imagecolorat函数用法示例
int imagecolorat ( resource $image , int $x , int $y )
返回 image 所指定的图形中指定位置像素的颜色索引值。
如果 PHP 编译时加上了 GD 库 2.0 或更高的版本并且图像是真彩色图像,则本函数以整数返回该点的 RGB 值。用移位加掩码来取得红,绿,蓝各自成分的值:
Example#1 取得各自的 RGB 值
<?php
$im = ImageCreateFromPng("rockym.png");
$rgb = ImageColorAt($im, 100, 100);
$r = ($rgb >> 16) & 0xFF;
$g = ($rgb >> 8) & 0xFF;
$b = $rgb & 0xFF;
?>
int imagecolorat ( resource $image , int $x , int $y )
返回 image 所指定的图形中指定位置像素的颜色索引值。
如果 PHP 编译时加上了 GD 库 2.0 或更高的版本并且图像是真彩色图像,则本函数以整数返回该点的 RGB 值。用移位加掩码来取得红,绿,蓝各自成分的值:
Example#1 取得各自的 RGB 值
<?php
$im = ImageCreateFromPng("rockym.png");
$rgb = ImageColorAt($im, 100, 100);
$r = ($rgb >> 16) & 0xFF;
$g = ($rgb >> 8) & 0xFF;
$b = $rgb & 0xFF;
?>