PHP图像处理之imagecreate、imagedestroy函数介绍

yipeiwu_com6年前PHP代码库

使用PHP的GD库处理图像时,必须对画布进行管理。创建画布就是在内存中开辟一块存储区域,以后在PHP中对图像的所有操作都是基于这个图布处理的,图布就是一个图像资源。在PHP中,可以使用imagecrete()和imageCreateTrueColor()两个函数创建指定的画布。这两个函数的作用是一致的,都是建立一个指定大小的画布,他们的原型如下所示:

复制代码 代码如下:

  resource imagecreate(int $x_size,int $y_size)              //新建一个基于调色板的图像
  resource imagecreatetruecolor(int $x_size,int $y_size)             //新建一个真彩色图像

  虽然这两个函数都可以创建一个新的画布,但各自能够容纳的颜色的总数是不同的。imageCreate()函数可以创建一个基于普通调色板的图像,通常支持256色。而imageCreateTrueColor()函数可以创建一个真彩色图像,但该函数不能用于GIF文件格式。当画布创建后,返回一个图像标识符,代表了一幅宽度为$x_size和高度为$y_size的空白图像引用句柄。在后续的绘图过程中,都需要使用这个资源类型的句柄。例如,可以通过调用imagesx()和imagesy()两个函数获取图像的大小。代码如下所示:
复制代码 代码如下:

<?php
$img = imagecreatetruecolor(300,200);//创建一个300*200的画布
echo imagesx($img);//输出画布宽度300
echo imagesy($img);//输出画布高度200
?>

  另外,画布的引用句柄如果不再使用,一定要将这个资源销毁,释放内存与该图像的存储单元。画布的销毁过程非常简单,调用imagedestroy()函数就可以实现。其语法格式如下所示:
复制代码 代码如下:

  bool imagedestroy(resource $image)                  //销毁一图像

  如果该方法调用成功,就会释放与参数$image关联的内存。其中参数$image是由图像创建函数返回的图像标识符。

相关文章

解决Laravel blade模板转义html标签的问题

解决Laravel blade模板转义html标签的问题

解决Laravel blade模板转义html标签的问题: 后台textarea提交到表里面的数据展现到前端页面时(在后台已使用nl2br()函数进行转换),直接显示如下: 很尴尬!!...

php获取文件名后缀常用方法小结

本文实例汇总了php获取文件名后缀常用方法。分享给大家供大家参考。具体实现方法如下: <?php header("Content-type:text/html;char...

php7安装openssl扩展方法

1、我的源码在 /home/topsec/Documents/php-7.0.11 ,安装位置在 /usr/local/php7, php.ini 在/ usr/local/php7/l...

PHP 信号管理知识整理汇总

SIGQUIT    建立CORE文件终止进程,并且生成core文件 SIGILL     建立CORE文件&nbs...

php var_export与var_dump 输出的不同

问题发现在跟踪yratings_get_targets的时候,error_log(var_export(yblog_mspconfiginit("ratings"),true));老是打...