PHP 绘图技术

Posted 孤舟残月浅笑嫣

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP 绘图技术相关的知识,希望对你有一定的参考价值。

1、图片格式:目前网站开发常见的图片格式有gif,jpg/jpeg,png .....

区别:

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

2、通过php编程来绘图

<?php
$width=800;
$height=600;
    //绘图技术 基本步骤 前提:在php.ini文件中启用gd库

    //创建画布 默认背景是黑色的
    $img=imagecreatetruecolor($width,$height);

    //绘制各种图形
    //创建一个颜色
    $background = imagecolorallocate($img, 255, 0, 0);
    //画圆
    imageellipse($img,60,100,50,50,$background);
    //椭圆
    imageellipse($img,60,180,50,30,$background);
    //画直线
    imageline($img,0,0,$width,$height,$background);
    //画矩形
    imagerectangle ($img, 400 , 200 , 600 , 80 , $background);
    //填充矩形
    imagefilledrectangle ($img, 400 , 400 , 600 , 300 , $background);
    //画弧线
    imagearc($img, 100, 300, 150, 150, 180, 270, $background);
    //画扇型  IMG_ARC_CHORD直线连接了起始和结束点   IMG_ARC_PIE
    imagefilledarc($img, 100, 400, 150, 150, 180, 270, $background,IMG_ARC_PIE);

    //拷贝图片到画布
    $scrImg=imagecreatefromgif(‘http://www.baidu.com/img/shouye_b5486898c692066bd2cbaeda86d74448.gif‘);
    $scrImgInfo=getimagesize(‘http://www.baidu.com/img/shouye_b5486898c692066bd2cbaeda86d74448.gif‘);
    imagecopy ($img,$scrImg,10,450,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 , 200 ,50, $background , "MSYHBD.TTF" , $str);

    //输出图像到网页(或者另存为)
    header("content-type: image/png");
    imagepng($img);

    //销毁该图片(释放内存)
    imagedestroy($img);
?>

 

以上是关于PHP 绘图技术的主要内容,如果未能解决你的问题,请参考以下文章

单缓冲和双缓冲 有啥区别

OpenGL单缓冲与双缓冲的区别(追加10分)

cocos2dx之2.x和3.x使用draw绘图的区别

R语言绘图——条形图/柱状图

PHP的GD库绘图

PHP绘图函数生成图片验证码