dmz社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 952|回复: 0

[功能实现] PHP之图像处理

[复制链接]
  • TA的每日心情

    2024-11-19 20:46
  • 签到天数: 244 天

    [LV.8]以坛为家I

    4434

    主题

    1459

    帖子

    1万

    积分

    会|员

    Rank: 9Rank: 9Rank: 9

    积分
    10734
    发表于 2019-12-15 10:00:05 | 显示全部楼层 |阅读模式

    本站资源全部免费,回复即可查看下载地址!

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    PHP中提供了一些对图像进行编辑处理的函数,其中最为典型的应用为随机图形验证码、图片水印以及数据统计中饼状图和柱状图的生成等

    PHP中有的图形函数可以直接使用,但多数需要在安装了GD2函数库后才能使用。在Windows平台下安装GD2库很简单,就是PHfile:///C:/Users/ADMINI~1/AppData/Local/Temp/SGTpbq/12540/64463F6F.gifP5自带的ext目录中的php_gd2_dll文件。
    如果没有,说明安装PHP时没有安装GD2库,打开php.ini文件,查看php.ini文件(c:\winsows),查看文件中是否有一句";extension = php_gd2.dll"(Paths and Directories 里),如果有,将其中的“;”去掉,再将文件中扩展目录extension_dir的值设置成PHP的ext目录所在的完整路径,如"extension_dir = E:\php5\ext",保存后重启Apache即可

    绘制一个图形一般包括4个步骤:1)创建一个背景,2)在背景中绘制图形或输入文本,3)输出图形,4)释放所有资源
    在此之前注意先将php.ini文件里 Language Options下的output_buffering默认的off改为on,然后重启Apache(Apache Restart),否则会出现如下的Warning:

    Cannot modify header information - headers already sent by.....
    例:绘制PNG图形,如绘制一条直线
    799018-20160602232908258-1689417139.png
    [PHP] 纯文本查看 复制代码
    $image = imagecreate(400,400);//创建一个图像,两个参数表示图像的宽度和高度,单位为像素,并返回此图像的数据流
    $background_color = imagecolorallocate($image,255,255,255);//为图像设置了白色的背景流,
    $black = imagecolorallocate($image,0,0,0);//为图像设置了黑色的背景流
    imageline($image,0,0,100,100,$black);//绘制一条直线,并设置其颜色为黑色
    ob_clean();//清除输出,否则图像无法显示
    header("Content-type:image/png");//向浏览器发送头信息,输出png图片
    imagepng($image);//输出图形
    imagedestroy($image);//清除资源
    图像处理函数可以直接创建一个图像流来绘制图形,还可以将现有的图片作为图像流读入,然后在次基础上对图像进行修饰,如加上水印效果等。这种功能常用来防止图片被盗用
    例:在原始图片(jpeg格式)上添加一个水印网址
    799018-20160602235422446-1731430310.png
    [PHP] 纯文本查看 复制代码
    ob_clean();
        header("Content-type:image/jpeg");
        $im = imagecreatefromjpeg("dog.jpg");
        $red = imagecolorallocate($im,255,0,0);
        imagestring($im,5,6,10,"http://www.cnblogs.com/520xiuge/",$red);
        imagejpeg($im);
        imagedestroy($im);
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|小黑屋|本站代理|dmz社区

    GMT+8, 2024-12-23 16:13 , Processed in 0.140857 second(s), 36 queries .

    Powered by Discuz! X3.4 Licensed

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表