仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 863|回复: 18
打印 上一主题 下一主题

[学习教程] PHP网页设计玩转图象函数库―罕见图形操作(PHP)

[复制链接]
精灵巫婆 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-4 00:17:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
我的文章不会对您的学习起到实质性的作用,您能否成功,还得靠自己的,坚持,坚持,再坚持,就是步入成功的不二法门。函数|图形   我尽可能不说大实际,诸如甚么是png,本人查处理.
PHP自4.3版本入手下手,绑缚了本人的GD2库,用户可以本人下载并设置.假如要检查本人的php版本是不是撑持gd模块(撑持JPEG,PNG,WBMP但不再撑持GIF),以下体例是一种办法:
if(!function_exists('imagecreate')) {
die('本办事器不撑持GD模块');
}
假如不撑持的话,若何设置装备摆设 ? 下载gd模块的dll文件,修正php.ini,重启办事器便可.
以下简称PHP作图为PS.
当您盘算 PS的话,应当完成以下以下步调,这是必经的.
1:创立根基PS对象(我假定为$image),填充后台(默许黑),今后的全体ps操作都是基于这个后台图象的.
2:在$image上作图.
3:输入这个图象.
4:烧毁对象,排除利用内存.
起首,咱们来熟悉几个经常使用的函数,这些函数在php手册外面都有具体引见,此处大体援用下.
resource imagecreate ( int x_size, int y_size )
imagecreate() 前往一个图象标识符,代表了一幅巨细为 x_size 和 y_size 的空白图象。
此函数根基同imagetruecolor($width,$height).
int imagecolorallocate ( resource image, int red, int green, int blue )
imagecolorallocate() 前往一个标识符,代表了由给定的 RGB 成份构成的色彩。image 参数是 imagecreatetruecolor() 函数的前往值。red,green 和 blue 分离是所需求的色彩的红,绿,蓝成份。这些参数是 0 到 255 的整数或十六进制的 0x00 到 0xFF。imagecolorallocate() 必需被挪用以创立每种用在 image 所代表的图象中的色彩。
bool imagefill ( resource image, int x, int y, int color )
imagefill() 在 image 图象的坐标 x,y(图象左上角为 0, 0)处用 color 色彩履行区域填充(即与 x, y 点色彩不异且相邻的点城市被填充)。

bool imageline ( resource image, int x1, int y1, int x2, int y2, int color )
imageline() 用 color 色彩在图象 image 中从坐标 x1,y1 到 x2,y2(图象左上角为 0, 0)画一条线段。
bool imagestring ( resource image, int font, int x, int y, string s, int col )
imagestring() 用 col 色彩将字符串 s 画到 image 所代表的图象的 x,y 坐标处(这是字符串左上角坐标,整幅图象的左上角为 0,0)。假如 font 是 1,2,3,4 或 5,则利用内置字体。
array imagettftext ( resource image, float size, float angle, int x, int y, int color, string fontfile, string text )
本函数对照主要,参数较多,此处不再列出,它次要是写字到图象上,和下面的函数相似,但必前者壮大.
bool imagefilltoborder ( resource image, int x, int y, int border, int color )
imagefilltoborder() 从 x,y(图象左上角为 0, 0)点入手下手用 color 色彩履行区域填充,直到碰着色彩为 border 的界限为止。【注:界限内的一切色彩城市被填充。假如指定的界限色和该点色彩不异,则没有填充。假如图象中没有该界限色,则整幅图象城市被填充。】
bool imagefilledellipse ( resource image, int cx, int cy, int w, int h, int color )
imagefilledellipse() 在 image 所代表的图象中以 cx,cy(图象左上角为 0, 0)为中间画一个椭圆。w 和 h 分离指定了椭圆的宽和高。椭圆用 color 色彩填充。假如胜利则前往 TRUE,掉败则前往 FALSE。
输入图象数据:imagepng($image[,$filename])
例一:输入蓝色后台和穿插白线的图形
<P>
<?php
$width=35;
$height=35;
//创立对象
$image=imagecreate($width,$height);
//提取色彩
$color_white=imagecolorallocate($image,255,255,255);//白色
$color_blue=imagecolorallocate($image,0,0,108);//蓝色
imagefill($image,0,0,$color_blue);
//作图
//线宽
imagesetthickness($image,3);
imageline($image,0,0,$width,$height ,$color_white);
imageline($image,$width,0,0,$height ,$color_white);
//发送对象至头
header('content-type:image/png');
imagepng($image);
/*
//发送对象至文件
$filename="ex1.png";
imagepng($image,$filename);
*/
//烧毁对象
imagedestroy($image);
?>

输入图像:

在线演示: http://www.phzzy.org/temp/5do8/ex1.php


[1] [2] [3] 下一页  

  可以说你的马步已经扎的差不多了,接下来就要开始练把势的时候了,如果有条件的话,用笔或者打印一个简易的PHP手册在身上,时不时的摸出来看看,记得,去WC也不能放过(^2^)。
海妖 该用户已被删除
沙发
发表于 2015-2-4 10:44:52 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
飘飘悠悠 该用户已被删除
板凳
发表于 2015-2-9 22:13:12 | 只看该作者
学好程序语言,多些才是王道,写两个小时代码的作用绝对超过看一天书,这个我是深有体会(顺便还能练打字速度)。
若相依 该用户已被删除
地板
发表于 2015-2-21 08:45:39 | 只看该作者
兴趣是最好的老师,百度是最好的词典。
精灵巫婆 该用户已被删除
5#
 楼主| 发表于 2015-2-22 20:45:22 | 只看该作者
php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会)
再现理想 该用户已被删除
6#
发表于 2015-3-1 20:47:35 | 只看该作者
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
透明 该用户已被删除
7#
发表于 2015-3-10 23:28:57 | 只看该作者
基础有没有对学习php没有太大区别,关键是兴趣。
第二个灵魂 该用户已被删除
8#
发表于 2015-3-15 05:22:43 | 只看该作者
我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。
再见西城 该用户已被删除
9#
发表于 2015-3-16 20:36:12 | 只看该作者
php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。
兰色精灵 该用户已被删除
10#
发表于 2015-3-22 01:50:45 | 只看该作者
学好程序语言,多些才是王道,写两个小时代码的作用绝对超过看一天书,这个我是深有体会(顺便还能练打字速度)。
分手快乐 该用户已被删除
11#
发表于 2015-4-3 03:45:32 | 只看该作者
对于初学者来说不推荐去拿钱买的。当然如果一个网站你经常去用,而且里面的资料也比较有用,最好还是买个会员比较好,毕竟那些也是别人的工作成果。
admin 该用户已被删除
12#
发表于 2015-4-7 00:19:38 | 只看该作者
基础有没有对学习php没有太大区别,关键是兴趣。
简单生活 该用户已被删除
13#
发表于 2015-4-9 10:13:35 | 只看该作者
你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。
若天明 该用户已被删除
14#
发表于 2015-4-12 04:28:40 | 只看该作者
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
老尸 该用户已被删除
15#
发表于 2015-4-26 11:49:06 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
乐观 该用户已被删除
16#
发表于 2015-4-28 22:05:22 | 只看该作者
本人接触php时间不长,算是phper中的小菜鸟一只吧。由于刚开始学的时候没有名师指,碰过不少疙瘩,呗很多小问题卡过很久,白白浪费不少宝贵的时间,在次分享一些子的学习的心得。
小魔女 该用户已被删除
17#
发表于 2015-5-2 01:40:36 | 只看该作者
个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。
谁可相欹 该用户已被删除
18#
发表于 2015-6-22 20:51:26 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
愤怒的大鸟 该用户已被删除
19#
发表于 2015-6-27 10:57:24 | 只看该作者
我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-14 13:48

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表