欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

php-GD库的函数(一)

程序员文章站 2024-01-13 13:53:28
...
 240 [1] => 124 [2] => 1 [3] => width="240" height="124" [bits] => 8 [channels] => 3 [mime] => image/gif ) 

	//image_type_to_mime_type - 取得 getimagesize,exif_read_data,exif_thumbnail,exif_imagetype 所返回的图像类型的 MIME 类型
	//$aa = getimagesize("./logo_i.gif");
	//print_r(image_type_to_mime_type ($aa));
	
	//imagearc — 画椭圆弧
	/*bool imagearc(resource $image ,int $cx ,int $cy ,int $w ,int $h , int $s , int $e , int $color);
	//$image:资源
	//$cx:左边离圆心的位置
	//$cy:上边离圆心的位置
	//$w:圆形的直径左右
	//$h:圆形的直径上下
	//$s:0度顺时针画
	//$e:360
	//$color:圆形的颜色
	// 创建一个 200X200 的图像
	$img = imagecreatetruecolor(200, 200);
	// 分配颜色
	$white = imagecolorallocate($img, 255, 255, 255);
	$black = imagecolorallocate($img, 0, 0, 0);
	// 画一个白色的圆
	imagearc($img, 100, 100, 150, 150, 0, 360, $white);
	// 将图像输出到浏览器
	header("Content-type: image/png");
	imagepng($img);
	// 释放内存
	imagedestroy($img);*/

	//imagechar — 水平地画一个字符
	/*bool imagechar ( resource $image , int $font , int $x , int $y , string $c , int $color )
	$image:资源
	$font:字体大小
	$x:文字离左边框的距离
	$y:文字离上边框的距离
	$c:将字符串 c 的第一个字符画在 image 指定的图像中
	$color:文字的颜色
	$im = imagecreate(100,100);
	$string = 'php';
	$bg = imagecolorallocate($im, 255, 255, 255);
	$black = imagecolorallocate($im, 0, 0, 0);
	// prints a black "P" in the top left corner
	imagechar($im, 1, 0, 0, $string, $black);
	header('Content-type: image/png');
	imagepng($im);*/

	//imagecharup — 垂直地画一个字符
	/*bool imagecharup ( resource $image , int $font , int $x , int $y , string $c , int $color )
	$image:资源
	$font:字体大小
	$x:文字离左边框的距离
	$y:文字离上边框的距离
	$c:将字符串 c 的第一个字符画在 image 指定的图像中
	$color:文字的颜色
	$im = imagecreate(100,100);
	$string = 'Note that the first letter is a N';
	$bg = imagecolorallocate($im, 255, 255, 255);
	$black = imagecolorallocate($im, 0, 0, 0);
	// prints a black "Z" on a white background
	imagecharup($im, 3, 10, 10, $string, $black);
	header('Content-type: image/png');
	imagepng($im);
	*/
	
	//imagecolorallocate — 为一幅图像分配颜色
	/*int imagecolorallocate ( resource $image , int $red , int $green , int $blue )
	$image:图片资源
	$red,$green,$blue分别是所需要的颜色的红,绿,蓝成分。这些参数是 0 到 255 的整数或者十六进制的 0x00 到 0xFF
	第一次对 imagecolorallocate() 的调用会给基于调色板的图像填充背景色
	$im = imagecreate( 100, 100);
	// 背景设为红色
	$background = imagecolorallocate($im, 255, 0, 0);
	// 设定一些颜色
	$white = imagecolorallocate($im, 255, 255, 255);
	$black = imagecolorallocate($im, 0, 0, 0);
	// 十六进制方式
	$white = imagecolorallocate($im, 0xFF, 0xFF, 0xFF);
	$black = imagecolorallocate($im, 0x00, 0x00, 0x00);
	header('Content-type: image/png');
	imagepng($im);
	*/

	//imagecolorallocatealpha — 为一幅图像分配颜色 + alpha
	/*int imagecolorallocatealpha ( resource $image , int $red , int $green , int $blue , int $alpha )
	imagecolorallocatealpha() 的行为和 imagecolorallocate() 相同,但多了一个额外的透明度参数 alpha,其值从 0 到 127。0 表示完全不透明,127 表示完全透明。
	$size = 300;
	$image=imagecreatetruecolor($size, $size);
	// 用白色背景加黑色边框画个方框
	$back = imagecolorallocate($image, 255, 255, 255);
	$border = imagecolorallocate($image, 0, 0, 0);
	imagefilledrectangle($image, 0, 0, $size - 1, $size - 1, $back);
	imagerectangle($image, 0, 0, $size - 1, $size - 1, $border);
	$yellow_x = 100;
	$yellow_y = 75;
	$red_x    = 120;
	$red_y    = 165;
	$blue_x   = 187;
	$blue_y   = 125;
	$radius   = 150;
	// 用 alpha 值分配一些颜色
	$yellow = imagecolorallocatealpha($image, 255, 255, 0, 75);
	$red    = imagecolorallocatealpha($image, 255, 0, 0, 75);
	$blue   = imagecolorallocatealpha($image, 0, 0, 255, 75);
	// 画三个交迭的圆
	imagefilledellipse($image, $yellow_x, $yellow_y, $radius, $radius, $yellow);
	imagefilledellipse($image, $red_x, $red_y, $radius, $radius, $red);
	imagefilledellipse($image, $blue_x, $blue_y, $radius, $radius, $blue);
	// 不要忘记输出正确的 header!
	header('Content-type: image/png');
	// 最后输出结果
	imagepng($image);
	imagedestroy($image);
	*/

	//imagecolordeallocate — 取消图像颜色的分配
	/*bool imagecolordeallocate ( resource $image , int $color )
	imagecolordeallocate() 函数取消先前由 imagecolorallocate() 或 imagecolorallocatealpha() 分配的颜色。 
	$im = imagecreate( 100, 100);
	// 背景设为红色
	$background = imagecolorallocate($im, 255, 0, 0);
	// 设定一些颜色
	$white = imagecolorallocate($im, 255, 255, 255);
	imagecolordeallocate($im,$white);
	header('Content-type: image/png');
	imagepng($im);*/
	
	//imagecolorexact — 取得指定颜色的索引值
	/*int imagecolorexact ( resource $image , int $red , int $green , int $blue )
	返回图像调色板中指定颜色的索引值。 
	如果颜色不在图像的调色板中,返回 -1。 
	如果从文件创建了图像,只有图像中使用了的颜色会被辨析。仅出现在调色板中的颜色不会被辨析。
	$im = imagecreate( 100, 100);
	// 背景设为红色
	$background = imagecolorallocate($im, 255, 0, 0);
	// 设定一些颜色
	$white = imagecolorallocate($im, 255, 255, 255);
	$aa = imagecolorexact ($im, 255, 0, 0);
	echo $aa;	//不存在返回-1*/

	//imagecolorset — 给指定调色板索引设定颜色
	/*void imagecolorset ( resource $image , int $index , int $red , int $green , int $blue )
	本函数将调色板中指定的索引设定为指定的颜色。
	$im = imagecreate( 100, 100);
	$background = imagecolorallocate($im, 255, 0, 0);
	for($c = 0;$c