浅析PHP绘图技术

yipeiwu_com7年前PHP代码库

1、图片格式:目前网站开发常见的图片格式有gif,jpg/jpeg,png .....
区别:
•gif 图片压缩率高,但是只能显示256色,可能造成颜色的丢失,可以显示动画
•jpg/jpeg 图片压缩率高(有损压缩),可以用较小的文件来显示,网页上用得比较多
•png 该格式综合了gif和jpg的优势,缺点是不能显示动画

2、通过PHP编程来绘图

复制代码 代码如下:

<?php
    //绘图技术 基本步骤 前提:在php.ini文件中启用gd库
    //创建画布 默认背景是黑色的
    $img=imagecreatetruecolor(400,300);
    //绘制各种图形
    //创建一个颜色
    $background = imagecolorallocate($img, 255, 0, 0);
    //画圆
    //imageellipse($img,30,30,50,50,$background);
    //椭圆
    //imageellipse($img,30,30,50,30,$background);
    //画直线
    //imageline($img,0,0,400,300,$background);
    //画矩形
    //imagerectangle ($img, 50 , 20 , 100 , 40 , $background);
    //填充矩形
    //imagefilledrectangle ($img, 50 , 20 , 100 , 40 , $background);
    //画弧线
    //imagearc($img, 100, 100, 150, 150, 180, 270, $background);
    //画扇型  IMG_ARC_CHORD直线连接了起始和结束点   IMG_ARC_PIE
    //imagefilledarc($img, 100, 100, 150, 150, 180, 270, $background,IMG_ARC_PIE);

    //拷贝图片到画布
/*    $scrImg=imagecreatefromgif('/zb_users/upload/202003/mmdiuuevyh1.gif');
    $scrImgInfo=getimagesize('/zb_users/upload/202003/mmdiuuevyh1.gif');
    imagecopy ($img,$scrImg,10,10,0,0,$scrImgInfo[0],$scrImgInfo[1]);
*/
    //imagecopy ($img,$scrImg,10,10,0,0,270,129);

    //写字
    //imagestring ($img , 5 , 20 , 20 , "hello,world", $background );
    //写中文
    $str="PHP绘画技术";
    imagettftext ($img , 30 , 0 , 50 ,50, $background , "MSYHBD.TTF" , $str);
    //输出图像到网页(或者另存为)
    header("content-type: image/png");
    imagepng($img);
    //销毁该图片(释放内存)
    imagedestroy($img);
?>

相关文章

Laravel中正确地返回HTTP状态码方法示例

Laravel中正确地返回HTTP状态码方法示例

在 API 中返回状态码是很重要的,因为响应处理程序是工作在 API 的响应状态码之上的。 写 API 时其中有一个重要的地方是更好的处理响应状态码。以前,我一般会使用不常用的 Int...

PHP获取文件扩展名的常用方法小结【五种方式】

本文实例总结了PHP获取文件扩展名的常用方法。分享给大家供大家参考,具体如下: 这是我应聘实习时遇到的一道笔试题: 使用五种以上方式获取一个文件的扩展名。 要求:dir/upload.i...

PHP实现类似于C语言的文件读取及解析功能

本文实例讲述了PHP实现类似于C语言的文件读取及解析功能。分享给大家供大家参考,具体如下: $log_file_name = 'D:/static/develop/kuai_zhi/...

PHP二分查找算法示例【递归与非递归方法】

本文实例讲述了PHP二分查找算法。分享给大家供大家参考,具体如下: binarySearch 二分查找采用的方法比较容易理解,以数组为例: ① 先取数组中间的值floor((low+to...

如何直接访问php实例对象中的private属性详解

前言 本文主要介绍了关于如何直接访问php实例对象中private属性的相关内容,在介绍关键部分之前,我们先回顾一下php面向对象的访问控制。 对属性或方法的访问控制,是通过在前面添加关...