(进阶篇)PHP图片处理技术-GD库

黄舟
发布: 2017-02-07 09:12:33
原创
3097人浏览过

1、开启gd扩展

extension=php_gd2.dll

Apache restart

2、示例:

场景:

立即学习PHP免费学习笔记(深入)”;

制作500×300的绿色图片

①创建画布

画布,一种资源型数据。可以操作的图像资源。

创建新画布(新建)

 ImageCreate(宽,高),创建基于调色板的画布。

 imageCreateTrueColor(宽,高);创建真彩色的画布。

基于图片创建画布(打开)

 imageCreateFromJPEG(图片地址);

 imageCreateFromPNG(图片地址);

 imageCreateFromGIF(图片地址);

②操作画布

分配颜色:如果需要在画布上使用某个颜色,应该先将颜色分配到画布上。

使用函数:

 颜色标识 = imageColorAllocate(画布,R,G,B);

颜色的表示方式:

RGB

③填充画布:将填充点,连续并且颜色相同的点进行填充(替换)

使用函数:

 imageFill(画布, 填充位置x, 填充位置Y,颜色标识)完成

图酷AI
图酷AI

下载即用!可以免费使用的AI图像处理工具,致力于为用户提供最先进的AI图像处理技术,让图像编辑变得简单高效。

图酷AI 57
查看详情 图酷AI

位置采用坐标进行管理:

原点:0,0,画布的左上角。

向右,x轴增加,向下Y轴增加。

右下角坐标:width-1,height-1

④输出画布

将画布中处理好的图样信息,输出出来。

典型的:

1输出到图片文件。

2直接输出。

使用函数:

imagePNG(画布[, 文件地址]):

imageJPEG();

imageGIF();

如果没有第二个参数,表示直接输出。

注:如果直接输出到浏览器,需要告知浏览器,响应数据的类型应该是PNG格式的图片:

使用指令Content-type;

一个画布可以输出多次,输出为各种格式

⑤销毁画布资源

imageDestroy()

示例代码:

<?php
//例如:制作500×300的绿色图片
$width=500;
$height=300;
//创建真彩色的画布
$img=imageCreateTrueColor($width,$height);
// var_dump($img);    //测试结果: resource(2) of type (gd)   $img是一个资源类型
//使用函数imageColorAllocate(画布,R,G,B)分配颜色,颜色的表示方式:R  G  B
$green=imageColorAllocate($img, 0x0, 0xff, 0x0);
//填充画布,原点:0,0,画布的左上角,imageFill(画布, 填充位置x, 填充位置Y,颜色标识)完成
imageFill($img,0,0,$green);
//输出画布,直接输出到当前路径下为图片文件,格式有PNG、JPEG、GIF
//imagePNG($img,'./green.png');  //如果没有第二个参数,表示直接输出
//如果直接输出到浏览器,需要告知浏览器,响应数据的类型应该是PNG格式的图片:使用指令Content-type
header('Content-Type:image/png;');
imagePNG($img);
//注:一个画布可以输出多次,输出为各种格式
//销毁画布资源
imageDestroy($img);
登录后复制

示例代码:

<?php
//例如:制作500×300的绿色图片
$width=500;
$height=300;
//创建真彩色的画布
$img=imageCreateTrueColor($width,$height);
// var_dump($img);    //测试结果: resource(2) of type (gd)   $img是一个资源类型
//使用函数imageColorAllocate(画布,R,G,B)分配颜色,颜色的表示方式:R  G  B
$green=imageColorAllocate($img, 0x0, 0xff, 0x0);
//填充画布,原点:0,0,画布的左上角,imageFill(画布, 填充位置x, 填充位置Y,颜色标识)完成
imageFill($img,0,0,$green);
//输出画布,直接输出到当前路径下为图片文件,格式有PNG、JPEG、GIF
//imagePNG($img,'./green.png');  //如果没有第二个参数,表示直接输出
//如果直接输出到浏览器,需要告知浏览器,响应数据的类型应该是PNG格式的图片:使用指令Content-type
header('Content-Type:image/png;');
imagePNG($img);
//注:一个画布可以输出多次,输出为各种格式
//销毁画布资源
imageDestroy($img);
登录后复制

以上就是(进阶篇)PHP图片处理技术-GD库的内容,更多相关内容请关注PHP中文网(www.php.cn)!

相关标签:
php
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号