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学习笔记]双缓冲绘图技术
双缓冲技术绘图: 什么情况下产生的双缓冲技术?当数据量很大时,绘图可能需要花费很长的时间,这样屏幕就会出现卡顿,闪烁等现象. 什么是双缓冲技术?双缓冲是在内存中创建一个与屏幕绘制区域一致的对象,先将图 ...
随机推荐
- 内联元素的特点SPAN
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- 使用MyEclipse构建MAVEN项目 - 我的漫漫程序之旅 - BlogJava
body { font-family: Microsoft YaHei UI,"Microsoft YaHei", Georgia,Helvetica,Arial,sans-ser ...
- Html基础详解
HTML是(Hyper Text Mark-up Language)超文本标记语言,是因特网上应用最为广泛的一种网络传输协议,所有的www文件都必须要遵守这个标准.这样就可以让浏览器根据标记语言的规则 ...
- Delphi中register, pascal, cdecl, stdcall, safecall(转)
源:http://blog.sina.com.cn/s/blog_552c78120100hsr9.html 注: 使用错误,或者在该加的地方没有加,可能会出现"privileged ins ...
- 6、手把手教你Extjs5(六)继承自定义一个控件
Extjs的开发都可以遵循OOP的原则,其对类的封装也很完善了.自定义一个控件最简单的办法就是继承一个已有的控件.根据上一节的需要,我做了一个Button的子类.首先根据目录结构,在app目录下建立一 ...
- Photoshop安装
作者:郑超 参考地址:http://bbs.weiphone.com/read-htm-tid-4594713.html 下载地址:http://www.adobe.com/downloads.htm ...
- 理解javascript函数的重载
javascript其实是不支持重载的,这篇文章会和java语言函数的重载对比来加深对javascript函数重载的理解. 以下我会假设读者不了解什么是重载所以会有一些很基础的概念 ...
- Android源码编译jar包BUILD_JAVA_LIBRARY 与BUILD_STATIC_JAVA_LIBRARY的区别(二)
上文简单介绍了BUILD_JAVA_LIBRARY 与BUILD_STATIC_JAVA_LIBRARY编译出来jar包的区别, 那么你如果拿到了一个内容是dex格式的jar包,而你又偏偏需要这个ja ...
- 《算法导论》习题2.3-5 二分搜索 Binary Search
地球人都知道“二分查找”,方法也非常简单,但是你能不能在10分钟内写出一个没有bug的程序呢? 知易行难,自己动手写一下试一试吧. public class BinarySearch { public ...
- iOS 生产证书
首先登陆https://developer.apple.com(99美元账号) 选择iOS Developer program 板块下的 Certificates,Identifiers & ...