Ø  报表
a)        什么是报表
报表就是用表格、图表等格式来动态显示数据。
b)        PHP绘图坐标系
1、  坐标系介绍
下图说明了PHP坐标系。坐标原点位于左上角,以像素为单位,像素是计算机屏幕上最小的显示单位,看下图:

2、  坐标体系--像素
“像素”(Pixel)是由 Picture(图像) 和 Element(元素)这两个单词的字母所组成的,是用来计算数码影像的一种单位,如同摄影的相片一样,数码影像也具有连续性的浓淡阶调,我们若把影像放大数倍,会发现这些连续色调其实是由许多色彩相近的小方点所组成,这些小方点就是构成影像的最小单位“像素”(Pixel)。这种最小的图形的单元能在屏幕上显示通常是单个的染色点。越高位的像素,其拥有的色板也就越丰富,越能表达颜色的真实感。
c)        PHP绘图技术
1、  PHP绘图的基本原理和步骤
创建画布
绘制需要的各种图像(Gd库提供绘图函数)
输出图像到网页,也可以另存为
销毁图片(释放内存)
  目前网站开发的创建图片格式GIF Jpg/JPEG Ping Bmp。。
总结:
GIF:图片压缩率高,但是只能显示256色,可能造成色彩丢失。可以显示动画图片。
Jpg/JPEG:图片压缩率高(有损压缩),可以用较小的文件来显示,王爷上用的比较多。
Ping:该格式综合了上面2种优势,缺点是不能显示动画。高保真(色彩丢失少。
2、   基本绘图函数介绍

<?php
//PHP绘图技术,
//phpinfo();
//创建画布,默认的背景是黑色的
$im=imagecreatetruecolor(400, 300); //绘制各种需要的图形(圆,直线,
$red=imagecolorallocate($im, 255, 0, 0); //圆
// imageellipse($im, 20, 20, 20, 20, $red); //直线
imageline($im, 0, 0, 400, 300, $red); //矩形
imagerectangle($im, 1, 1, 200, 100, $red); //填充矩形 // imagefilledrectangle($im, 2, 2, 40, 50, $red); //弧线
// imagearc($im, 100, 100, 50, 100, 0, 180, $red); //扇形
//imagefilledarc($im, 100, 100, 50, 100, 0, 180, $red, IMG_ARC_PIE); //拷贝图片到画布
//1,加载原图片
// $srcImage = imagecreatefromgif("1.GIF");
//获得图片信息
//$srcImageInfo=getimagesize("1.GIF");
//2,拷贝元图片到画布
// imagecopy($im, $srcImage, 0, 0, 0, 0, $srcImageInfo[0], $srcImageInfo[1]); //写字(不支持中文
imagestring($im, 5, 0, 0, "I LOVE YOU 1 2 3", $red);
//写中文需要用到下面的函数
// imagettftext($im, 20, 0, 100, 100, $red, "'arial.ttf","我爱你" ); //输出图像到网页,也可以另存 header("Content-type: image/gif");
imagegif($im); //销毁图片,释放内存
imagedestroy($im); ?>

PHP自学之路---报表及绘图技术的更多相关文章

  1. 【转】JAVA自学之路

    JAVA自学之路 一: 学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3G.测试等. 那么究竟应该选择什么方向 ...

  2. 【PHP绘图技术&&验证码绘制】

    PHP绘图是比较简单的事情,基本绘图如直线.圆.矩形.弧线.填充矩形.填充扇形.非中文字的打印.中文文字的打印在在下面的代码中会纤细讲解. 需要支持中文的字体,可以到windows自带的字体库中找,并 ...

  3. 【二十七】php之绘图技术(gd、jpgraph、短信随机验证码)

    1.绘图技术(GD库) 注意:使用该库,php.ini文件中的extension=php_gd2.dll必须是开启状态,不然无法使用 图片格式:目前网站开发常见的图片格式有gif,jpg/jpeg,p ...

  4. 聊聊我的 Java 自学之路

    最近经常在知乎收到类似『没基础,java 如何自学』.『怎么才能掌握编程』等等问题,再加上发现高中同学也在自学.有感而发,讲讲我的自学之路. 1.1. 大学 高考没正常发挥,考入一所二流的学校,当时分 ...

  5. 一个「学渣」从零开始的Web前端自学之路

    从 13 年专科毕业开始,一路跌跌撞撞走了很多弯路,做过餐厅服务员,进过工厂干过流水线,做过客服,干过电话销售可以说经历相当的“丰富”. 最后的机缘巧合下,走上了前端开发之路,作为一个非计算机专业且低 ...

  6. 【我的前端自学之路】【HTML5】.html和.htm的区别

    以下为自学笔记内容,仅供参考. 转发请保留原文链接:https://www.cnblogs.com/it-dennis/p/10508171.html .htm 和 .html 的区别 .htm 和 ...

  7. 【转】Java自学之路——by马士兵

    作者:马士兵老师 JAVA自学之路 一:学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3G.测试等. 那么究竟 ...

  8. Java自学之路(新手一定要看)

    Java自学之路(新手一定要看) 转自尚学堂 JAVA自学之路 一:学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游 ...

  9. [感悟]马士兵Java自学之路——(精华版)

    JAVA自学之路 一: 学会选择 为了就业,不少同学参加各种各样的培训. 决心做软件的,大多数人选的是java,或是.net,也有一些选择了手机.嵌入式.游戏.3G.测试等. 那么究竟应该选择什么方向 ...

随机推荐

  1. Codeforces 551C GukiZ hates Boxes(二分)

    Problem C. GukiZ hates Boxes Solution: 假设最后一个非零的位置为K,所有位置上的和为S 那么答案的范围在[K+1,K+S]. 二分这个答案ans,然后对每个人尽量 ...

  2. 中级Perl 第三章课后习题

    3. 10. 1. 练习1 [25 分钟] 读当前目录的文件列表并转换成全路径.不能用shell 命令或外部程序读当前目 录.Perl 的File::Spec 和Cwd 两个模块对这个程序有帮助.每个 ...

  3. 『重构--改善既有代码的设计』读书笔记----Substitute Algorithm

    重构可以把复杂的东西分解成一个个简单的小块.但有时候,你必须壮士断腕删掉整个算法,用简单的算法来取代,如果你发现做一件事情可以有更清晰的方式,那你完全有理由用更清晰的方式来解决问题.如果你开始使用程序 ...

  4. Linux下ln链接命令详解

    ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个不同的链接,这个命令最常用的参数是-s,具体用法是:ln –s 源文件 目标文件. 当我们需要在不同的目录,用到相同的 ...

  5. html中的空格可以用什么代替

    半角空格用 代替,全角的空格可以直接在网页里生效. 打全角空格的两种方法:1.智能ABC按v1,选择第一个2.按shift+空格切换输入法的“半.全角”状态为全角再按空格

  6. python路径相关

    import sys import os sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) 将当 ...

  7. Ruby自学笔记(六)— 循环

    循环结构在编程语言中是不可或缺的,所以Ruby中的循环也有其自定义的规则. 而我们关注循环结构,要知道两个因素:1) 循环的条件:2) 循环执行的内容 Ruby有一些方式来实现循环结构体: 1. ti ...

  8. 将Excel导入到数据中

    常用的方式的有两种: 1. 通过 Microsoft.Jet.OLEDB.4.0 或  Microsoft.ACE.OLEDB.12.0 Microsoft.ACE.OLEDB.12.0 需要安装 A ...

  9. windows C 与 linux C区别?

    windows C库格式为  .dll( 动态链接库英文为DLL,是Dynamic Link Library 的缩写形式,DLL是一个包含可由多个程序同时使用的代码和数据的库,DLL不是可执行文件). ...

  10. bzoj3339 bzoj3585

    两题本质是一样,只不过3585要离散化这种不修改,不强制的问题,显然先考虑离线算法这道题的思路和bzoj1878非常像考虑到如果只是求每个前缀的mex,我们是很容易扫一遍就得出来的我们设为这个位置的m ...