1、PHP报表的创建,通过绘图,过程

要先开启gb库,

可以使用jpgraph(绘图框架)快速制作一些图形

报表的作用:可以制作一些统计图,地形图,分布图等,还可以做验证码图片(通过在画布上加字和干扰图片)

一、//创建画布

$im=imagecreatetruecolor(400, 300);

二、//绘制需要的各种图形(圆,直线,矩形,弧线,扇形......)

//创建一个颜色

$red=imagecolorallocate($im, 255, 0, 0);//颜色

imageellipse($im, 20, 20, 20,20, $red);//圆

还可以拷贝图片到画布

//拷贝图片到画布 //1、加载源图片 $srcImage=imagecreatefrompng('logo.png');

//得到图片宽和高 $imageinfo=getimagesize('logo.png'); //拷贝源图片到目标画布

imagecopy($im, $srcImage,0, 0, 0, 0,$imageinfo[0],$imageinfo[1]);

还可以在画布上写字,或者加一些其他的图形,

3、最后输出图片,并销毁

//输出图形到网页,也可以另存

header('content-type:image/png'); imagepng($im);

//销毁该图片

imagedestroy($im);

<?php
//创建画布
$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, 0, 0, 40, 50, $red);//矩形
imagefilledrectangle($im, 60, 60, 90, 90, $red);//填充矩形
imagearc($im, 150, 150, 50, 50,0,180, $red);//弧线
//扇形
imagefilledarc($im, 200, 200, 80, 50, 0, 90, $red, IMG_ARC_ROUNDED); //拷贝图片到画布
//1、加载源图片
$srcImage=imagecreatefrompng('logo.png');
//得到图片宽和高
$imageinfo=getimagesize('logo.png');
//拷贝源图片到目标画布
imagecopy($im, $srcImage,0, 0, 0, 0,$imageinfo[0],$imageinfo[1]); //写字
//imagestring($im, 9, 0,0, 'huo海峰', $red);
$str='huo霍海峰';
$str=iconv('gbk', 'utf-8', $str);
imagettftext($im, 30, -25, 50, 50, $red,'SIMHEI.TTF',$str); //输出图形到网页,也可以另存
header('content-type:image/png');
imagepng($im);
//销毁该图片
imagedestroy($im);
//

php绘图-报表的更多相关文章

  1. PHP自学之路---报表及绘图技术

    Ø  报表 a)        什么是报表 报表就是用表格.图表等格式来动态显示数据. b)        PHP绘图坐标系 1.  坐标系介绍 下图说明了PHP坐标系.坐标原点位于左上角,以像素为单 ...

  2. R语言:ggplot2精细化绘图——以实用商业化图表绘图为例

    本文版权归http://www.cnblogs.com/weibaar 本文旨在介绍R语言中ggplot2包的一些精细化操作,主要适用于对R画图有一定了解,需要更精细化作图的人,尤其是那些刚从exce ...

  3. HighChart报表之饼图

    个人认为HighChart做报表还是很不错的,从报表的样式还是性能都是很不错的选择. 1.新建一个html页面,命名为:ReportTest.html <script type="te ...

  4. Mark Down绘图语法

    以下语法在网易云笔记中测试通过. 绘图的标志位是三个单引号```  开始  ``` 结尾 ,注意是英文半角的单引号,以下的字符也是英文半角状态下的才正确. 搜狗输入法的要特别注意,记得把shift 切 ...

  5. 【WEB前端】使用百度ECharts,绘制项目质量报表

    一.下载ECharts的js库 下载地址:http://echarts.baidu.com/download.html 由于我们对体积无要求,所以我们采用了完整版本,功能齐全,在项目中,我们只需要像普 ...

  6. C# 报表设计器 (winform 设计端)开发与实现生成网页的HTML报表

    记得2010年之前,公司的项目基本上都要用到报表,以前我们常用的方法就是针对客户的需求来定制化开发(基本上是死写代码)来实现,经常导致项目经常性的延期,因为客户的需求经常会变化,随着用户的使用认知度的 ...

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

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

  8. 多功能节点连线绘图控件Nevron Diagram for .NET使用方法及下载地址

    Nevron Diagram for .NET是一个功能强大,世界上顶级的.NET图表控件.可扩展的图形报表构架,可以帮您创建功能丰富的Winforms及Webforms图表解决方案.这个产品构建于N ...

  9. 我的这10年——从机械绘图 到 炼油 到 微软MVP 的华丽转身

    年底了,各种总结计划满天飞,有空的时候我也一直在思考这么多年,是怎么过来的.也曾经很迷茫,希望经验和经历能给大家一点带来一点正能量的东西.10年很长,10年前说实话我没有思考过现在的样子,但10年前的 ...

随机推荐

  1. cc2530启动流程---广播发送数据

    //操作系统任务初始化 void osalInitTasks( void ) { uint8 taskID = ; // 分配内存,返回指向缓冲区的指针 tasksEvents = (uint16 * ...

  2. JavaScript中call,apply,bind方法的总结

    原文链接:http://www.cnblogs.com/pssp/p/5215621.html why?call,apply,bind干什么的?为什么要学这个? 一般用来指定this的环境,在没有学之 ...

  3. HTML 引用Css样式的四种方式

    不才,只知道HTML引用CSS样式有四种方式,内部引用和外部引用各两种,因为老是忘记细节,记下了随时翻阅亦可方便如我般的初学者 内部引用方式1: 直接在标签内用 style 引用,如: <div ...

  4. Swift中的异常处理

    swift中的异常处理 如果在调用系统某一个方法时,该方法最后有一个throws.说明该方法会抛出异常.如果一个方法会抛出异常,那么需要对该异常进行处理 *在swift中提供三种处理异常的方式 方式一 ...

  5. Java中的构造方法

    什么是构造方法:每一个类中至少有一个构造方法,它用于创建该类对象,这个和OC中的init有异曲同工之妙. 构造方法的格式:A:方法名与类名相同  B:没有返回值类型,没有void C:没有具体的返回值 ...

  6. 针对iOS10的各种问题的解决方法

    1.iOS10相册相机闪退bug: iOS10系统下调用系统相册,相机功能,遇到闪退的情况,描述如下: This app has crashed because it attempted to acc ...

  7. PHP 页面缓冲函数

    1.flush:刷新缓冲区的内容,输出.函数格式:flush()说明:这个函数经常使用,效率很高.2.ob_start :打开输出缓冲区函数格式:void ob_start(void)说明:当缓冲区激 ...

  8. Content Provider 小结

    Android中的四大组件之一ContentProvider,它支持多个应用间进行存储和读取数据等操作,实现不同应用间的数据共享. ContentProvider,解释为内容提供商.顾名思义,就是对外 ...

  9. Laravel Eloquent get获取空的数据问题

    在用laravel框架来获取数据,若数据不存在时,以为会返回空,其实不是的,其实是一个 collection 值,会返回如下: object(Illuminate\Database\Eloquent\ ...

  10. [Lua]Mac系统上安装Lua环境

    1.下载 Lua语言的官方网站 http://www.lua.org/ 下载最新版本的Lua环境 2.安装 解压下载包lua-5.3.1.tar.gz 打开终端Terminal 使用cd命令进入该目录 ...