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 绘图技术的更多相关文章
- 【PHP绘图技术&&验证码绘制】
PHP绘图是比较简单的事情,基本绘图如直线.圆.矩形.弧线.填充矩形.填充扇形.非中文字的打印.中文文字的打印在在下面的代码中会纤细讲解. 需要支持中文的字体,可以到windows自带的字体库中找,并 ...
- Windows 窗体的.Net 框架绘图技术
当编写一个典型的Windows 窗体程序时,窗体和控件的绘制.效果等操作是不需要特别加以考虑的.这是为什么呢?因为通过使用 .Net 框架,开发人员可以拖动一系列的控件到窗体上,并书写一些简单的与事件 ...
- PHP自学之路---报表及绘图技术
Ø 报表 a) 什么是报表 报表就是用表格.图表等格式来动态显示数据. b) PHP绘图坐标系 1. 坐标系介绍 下图说明了PHP坐标系.坐标原点位于左上角,以像素为单 ...
- 【二十七】php之绘图技术(gd、jpgraph、短信随机验证码)
1.绘图技术(GD库) 注意:使用该库,php.ini文件中的extension=php_gd2.dll必须是开启状态,不然无法使用 图片格式:目前网站开发常见的图片格式有gif,jpg/jpeg,p ...
- 对于PHP绘图技术的理解
要使用PHP绘图,就得在php.ini文件中设置一下 找到这个位置 ;extension=php_gd2.dll,然后把前面的分号去掉,重启下apache就可以了 几乎每行代码我都写了注释,方便看懂 ...
- 【MFC】MFC绘制动态曲线,用双缓冲绘图技术防闪烁
摘自:http://zhy1987819.blog.163.com/blog/static/841427882011614103454335/ MFC绘制动态曲线,用双缓冲绘图技术防闪烁 2011 ...
- 【转 | 侵删】2D 绘图技术中的坐标系统与坐标变换
本文介绍在 2D 绘图技术中的坐标系统和坐标变换的相关知识.同时介绍 Kity 在这方面提供的 API .希望这些知识对于需要进行图形应用开发的同学会有所帮助. 锤子的故事 很久以前,有一个画家,他很 ...
- win32下的双缓冲绘图技术
一:双缓冲原理 为了解决窗口刷新频率过快所带来的闪烁问题,利用双缓冲技术进行绘图.所谓双缓冲技术,就是将资源加载到内存,然后复制内存数据到设备DC(这个比较快),避免了直接在设备DC上绘图(这个比较慢 ...
- [Android学习笔记]双缓冲绘图技术
双缓冲技术绘图: 什么情况下产生的双缓冲技术?当数据量很大时,绘图可能需要花费很长的时间,这样屏幕就会出现卡顿,闪烁等现象. 什么是双缓冲技术?双缓冲是在内存中创建一个与屏幕绘制区域一致的对象,先将图 ...
随机推荐
- xshell 图形化连接ubuntu
原文: http://jingyan.baidu.com/article/d45ad148967fcd69552b80f6.html Xmanager4系列软件是一套非常好的liunx远程操作,尤其是 ...
- photoshop基础教程视频-贺叶铭-传智播客-笔记
界面构成 1.菜单栏 2.工具箱 3.工具属性栏 4.悬浮面板 5.画布 ctrl+n 新建对话框 (新建画布) 画布200*200大小,是指以毫米为单位,当不说单位,默认是毫米. 打开对话框:ctr ...
- 设计一个 iOS 控件
转载自:http://blog.csdn.net/zhangao0086/article/details/45622875 代码的等级:可编译.可运行.可测试.可读.可维护.可复用 前言 一个控件从外 ...
- Python大神成长之路: 第一次学习记录
一.Python发展史 二.Python2 or 3 博主选择了Python3. 从官网下载Python www.python.org Windows安装python3.5.python2.7.安装 ...
- Unity3d疑难问题解决
1. 加载 c++ dll 不成功,报这个错: Failed to load 'Assets/Plugins/x86_64/myFile.dll' with error 'The operation ...
- git第一篇---基本命令
摘要: (1)用git而不是svn.分布式而不是集中式 (2)名词解释 origin是父目录的意思,master是 一个特殊的分支而已.具体参看做最下边: 1.创建仓库 mkdir git cd gi ...
- 在Android上实现SSL握手(客户端需要密钥和证书),实现服务器和客户端之间Socket交互
Android的私钥和信任证书的格式必须是BKS格式的,通过配置本地JDK,让keytool可以生成BKS格式的私钥和信任证书,java本身没有BouncyCastle密库 服务端: Java代码 ...
- 《accelerated c++》---------第六章
本章主要讲了算法部分.就是<algoruthm>里面的算法.
- 如何把程序钉到Windows7任务栏(修正版)
源:如何把程序钉到Windows7任务栏(修正版) 在CSDN论坛看到有网友提问如何把程序钉到Windows7的任务栏,ccrun(妖哥)对这个问题很感兴趣,于是google了一下,没有找到相关的AP ...
- Lua学习系列(一)
从现在开始,打算学习一门新的脚本语言-lua. 1.什么是lua? a) lua1 • Lua 1.0 was implemented as a library, in less then 6000 ...