您的位置:首页 > 编程语言 > PHP开发

[PHP] GD库(七):分配、取消图像颜色 imagecolorallocate 与 imagecolordeallocate 函数

2017-07-30 01:25 555 查看

[PHP] GD库(七):分配、取消图像颜色 imagecolorallocate 与 imagecolordeallocate 函数

imagecolorallocate() 函数用于为图像分配颜色。

imagecolordeallocate() 函数用于取消先前由 imagecolorallocate() 等函数为图像分配的颜色。

imagecolorallocate()

imagecolorallocate() 函数用于为图像分配颜色,返回一个标识符,代表了由给定的 RGB 成分组成的颜色,如果分配失败则返回 -1 。

语法:

  
int imagecolorallocate( resource image, int red, int green, int blue )


参数 red,green 和 blue 分别是所需要的颜色的 红,绿,蓝 成分,取值范围 0 - 255。

例子:

<?php
header("Content-type: image/png");

//创建图像
$im = @imagecreate(200, 50) or die("创建图像资源失败");

//图片背景颜色并填充
$bg = imagecolorallocate($im, 204, 204, 204);

//设定文字颜色
$red = imagecolorallocate($im, 255, 0, 0);
//水平画一行字
imagestring($im, 5, 0, 0, "Hello world!", $red);

//以PNG格式输出图像
imagepng($im);

//销毁图像资源
imagedestroy($im);
?>


提示

- 对于用 imagecreate() 建立的图像,第一次调用 imagecolorallocate() 会给图像填充背景色(如上面例子)。

对于用 imagecreatetruecolor() 建立的图像,则需要使用别的指令如 imagefill() 填充背景。

imagecolorallocatealpha()

imagecolorallocatealpha() 和 imagecolorallocate() 用法相同,但多了一个额外的透明度参数 alpha,其值从 0 到 127。0 表示完全不透明,127 表示完全透明。

语法:

  
int imagecolorallocatealpha( resource image, int red, int green, int blue, int alpha )


imagecolordeallocate()

imagecolordeallocate() 函数用于取消先前由 imagecolorallocate() 和imagecolorallocatealpha() 函数为图像分配的颜色。

语法:

  
bool imagecolordeallocate( resource image, int color )


例子:

<?
$im = @imagecreate(200, 50) or die("创建图像资源失败");
$bg = imagecolorallocate($im, 255, 0, 0);
imagecolordeallocate($im, $bg);
?>


原文
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php 图像处理 GD