肥宅自学平台_人人成为技术开发者

肥宅人只等待您,联系我们吧,曾经的巅峰是否能回来?我们正在用心服务!

PHP如何使用内置函数生成图片

 更新时间:2024-04-20 15:27:41   作者:肥宅-季波   我要评论(0)  

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

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

php中有两个函数创建一张图片:mageCreate()创建一张空图片;ImageCreateFromPng()以现有的png图片为背景来创建一张图片。(这里的”Png”可以替换为”jpg”或”gif”,根据背景图片的格式来确定)
  1. $myImage=ImageCreate(400,60); //参数为宽度和高度
  2. $myImage=ImageCreateFromJpg("http://farm5.static.flickr.com/418978874_c349c14359_o.jpg");
无论你使用了上面的哪一种方法,我们就创建好了一张图片,并把图片存到了$myImage这个变量中。

第二步:添加颜色
这时我们需要通过ImageColorAllocate()函数来创建一些颜色,把他们存到变量中,方便后面使用。
  1. $white=ImageColorAllocate($myImage, 255, 255, 255);
  2. $black=ImageColorAllocate($myImage, 0, 0, 0);
  3. $red=ImageColorAllocate($myImage, 255, 0, 0);
  4. $green=ImageColorAllocate($myImage, 0, 255, 0);
  5. $blue=ImageColorAllocate($myImage, 0, 0, 255);
第三步:绘制图形
你还可以使用php的一些内置函数来添加一些几何图形:
  1. ImageEllipse() //绘制椭圆
  2. ImageArc() //绘制曲线
  3. ImagePolygon() //绘制多边形
  4. ImageRectangle() //绘制矩形
  5. ImageLine() //绘制线条
下面是一个例子
  1. ImageRectangle($myImage, 50, 20, 200, 15, $blue);
这时,你会发现只绘制了矩形的轮廓,如果你想要的是填充的矩形,使用ImageFilledRectangle()方法:
  1. ImageFilledRectangle($myImage, 50, 20, 200, 15, $blue);
第四步:添加文字
我们可以使用imagettftext()函数来为图片添加文字:
  1. imagettftext($myImage, 12, 0, 5, 20, $black, "Fonts/Oblivious font.ttf",  "这是要显示的内容");
你肯定注意到了,在这里你需要选择字体(此处用的是Fonts/Oblivious font.ttf, 你可以使用你自己的喜欢的字体)。 如果不知道如何来获取字体,可以google一下,上面有很多的下载字体的网站,里面的内容足够让你眼花缭乱了。

第五步:生成图片
当你成功的绘制好了你要显示的图片,接下来就要把它显示在页面中了。首先要做的是,告诉页面,你要向他发送的数据是一张图片:
  1. //这里的png可以换成jpg,或者是gif,根据你要生成的图片格式来确定
  2. header("Content-type:image/png");
  3. ImagePng($myImage);
接下来,因为我们不在需要$myImage这个变量了,我们需要把它的内存释放掉:
  1. ImageDestroy($myImage);
第六步:调用图片
通过前面的五步,我们已经创建了一张图片,下面给大家说一下如何调用这张创建好了的图片。

在HTML文件中,我们使用url来引入这张图片:
  1. <img src="new-image.php的路径" alt="myImage" />
  2. //在src中,写入new-image.php文件的路径,你就会发现刚才创建的图片已经被成功的调用了
利用imagepng()可生成一个图片文件

例如:
  1. <?php
  2. $myImage=ImageCreate(400,60); //参数为宽度和高度
  3. $white=ImageColorAllocate($myImage, 255, 255, 255);
  4. $black=ImageColorAllocate($myImage, 0, 0, 0);
  5. $red=ImageColorAllocate($myImage, 255, 0, 0);
  6. $green=ImageColorAllocate($myImage, 0, 255, 0);
  7. $blue=ImageColorAllocate($myImage, 0, 0, 255);
  8. imagettftext($myImage, 12, 0, 5, 20, $red, "stxingka.ttf", "果冻 Elvis");
  9. ?>
  10. <?php imagepng($myImage,"xxx.jpg");
  11. ?>  
"小礼物走一走,来肥宅自学平台支持我"
评论区

评论

共条评论
  • 这篇文章还没有收到评论,赶紧来抢沙发吧~
客服中心在线客服
全心全意为平台用户服务
Copyright © 2017-2023 自学平台网站地图:去查看>
  • 肥宅人自己的自学平台
  • 人人都能成为平台讲师
  • 贡献你的力量壮大肥宅自学平台
  • 将自己的能力变现
  • 实现人生的第二职业
网址收藏平台安卓APP
微信公众号微信公众号

本站部分图片或者资源来自程序自动采集或卖家(商家)发布,如果侵犯了您的权益请与我们联系,我们将在24小时内删除!谢谢!

肥宅自学教程网是一个主打IT视频教程、自媒体运行、摄影剪辑等内容的资源学习交流平台。