• 技术文章 >php教程 >php手册

    PHP使用内置函数生成图片的方法详解,

    2016-06-13 08:40:16原创816

    PHP使用内置函数生成图片的方法详解,


    本文实例讲述了PHP使用内置函数生成图片的方法。分享给大家供大家参考,具体如下:

    第一步:创建图片

    新建一个php文件,命名为new-image.php(你可以任意命名,方便后面的调用就行)。

    php中有两个函数创建一张图片:mageCreate()创建一张空图片;ImageCreateFromPng()以现有的png图片为背景来创建一张图片。(这里的”Png”可以替换为”jpg”或”gif”,根据背景图片的格式来确定)

    $myImage=ImageCreate(400,60); //参数为宽度和高度
    $myImage=ImageCreateFromJpg("http://farm5.static.flickr.com/418978874_c349c14359_o.jpg");
    
    

    无论你使用了上面的哪一种方法,我们就创建好了一张图片,并把图片存到了$myImage这个变量中。

    第二步:添加颜色

    这时我们需要通过ImageColorAllocate()函数来创建一些颜色,把他们存到变量中,方便后面使用。

    $white=ImageColorAllocate($myImage, 255, 255, 255);
    $black=ImageColorAllocate($myImage, 0, 0, 0);
    $red=ImageColorAllocate($myImage, 255, 0, 0);
    $green=ImageColorAllocate($myImage, 0, 255, 0);
    $blue=ImageColorAllocate($myImage, 0, 0, 255);
    
    

    第三步:绘制图形

    你还可以使用php的一些内置函数来添加一些几何图形:

    ImageEllipse() //绘制椭圆
    ImageArc() //绘制曲线
    ImagePolygon() //绘制多边形
    ImageRectangle() //绘制矩形
    ImageLine() //绘制线条
    
    

    下面是一个例子

    ImageRectangle($myImage, 50, 20, 200, 15, $blue);
    
    

    这时,你会发现只绘制了矩形的轮廓,如果你想要的是填充的矩形,使用ImageFilledRectangle()方法:

    ImageFilledRectangle($myImage, 50, 20, 200, 15, $blue);
    
    

    第四步:添加文字

    我们可以使用imagettftext()函数来为图片添加文字:

    复制代码 代码如下:imagettftext($myImage, 12, 0, 5, 20, $black, "Fonts/Oblivious font.ttf", "这是要显示的内容");

    你肯定注意到了,在这里你需要选择字体(此处用的是Fonts/Oblivious font.ttf, 你可以使用你自己的喜欢的字体)。 如果不知道如何来获取字体,可以google一下,上面有很多的下载字体的网站,里面的内容足够让你眼花缭乱了。

    第五步:生成图片

    当你成功的绘制好了你要显示的图片,接下来就要把它显示在页面中了。首先要做的是,告诉页面,你要向他发送的数据是一张图片:

    //这里的png可以换成jpg,或者是gif,根据你要生成的图片格式来确定
    header("Content-type:image/png");
    ImagePng($myImage);
    
    

    接下来,因为我们不在需要$myImage这个变量了,我们需要把它的内存释放掉:

    ImageDestroy($myImage);
    
    

    第六步:调用图片

    通过前面的五步,我们已经创建了一张图片,下面给大家说一下如何调用这张创建好了的图片。

    在HTML文件中,我们使用url来引入这张图片:

    myImage
    //在src中,写入new-image.php文件的路径,你就会发现刚才创建的图片已经被成功的调用了
    
    

    利用imagepng()可生成一个图片文件

    <?php imagepng($myImage,"xxx.jpg"); ?>
    
    

    例如:

    <?php
    $myImage=ImageCreate(400,60); //参数为宽度和高度
    $white=ImageColorAllocate($myImage, 255, 255, 255);
    $black=ImageColorAllocate($myImage, 0, 0, 0);
    $red=ImageColorAllocate($myImage, 255, 0, 0);
    $green=ImageColorAllocate($myImage, 0, 255, 0);
    $blue=ImageColorAllocate($myImage, 0, 0, 255);
    imagettftext($myImage, 12, 0, 5, 20, $red, "stxingka.ttf", "果冻 Elvis");
    ?>
    <?php imagepng($myImage,"xxx.jpg"); ?>
    
    

    以上代码将在根目录下生成一个xxx.jpg的图片文件。

    更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP图形与图片操作技巧汇总》、《PHP数组(Array)操作技巧大全》、《PHP数学运算技巧总结》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

    希望本文所述对大家PHP程序设计有所帮助。

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:PHP 生成图片
    上一篇:PHP数据库操作Helper类完整实例,phphelper 下一篇:使用php从身份证号中获取一系列线索(星座、生肖、生日等),php身份证号
    20期PHP线上班

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• PHP上传文件时自动分配路径的方法• php批量添加数据与批量更新数据的实现方法,php添加数据• MVC with PHP(二)• PHP防注入之程序里的敏感信息• php配合jquery实现增删操作
    1/1

    PHP中文网