- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PHP图片处理库Grafika详细教程(4):图形绘制该文章是接着上一篇文章:《PHP极其强大的图片处理库Grafika详细教程(3):图像属性处理》,是grafika教程的一个部分。作者:星空幻颖来源:segmentfault|2016-11-10 13:55?收藏??分享该文章是接着上篇文章,《PHP极其强大的图片处理库Grafika详细教程(3):图像属性处理》,是grafika教程的一个部分。所有的教程目录《1、图像基本处理》《2、图像特效处理模块》《3、图像属性处理》《4、图形绘制》话不多说,我们接着上实例,要看基础描述,和下载信息请看第一篇1、绘制贝塞尔曲线贝塞尔曲线绘制,需要两个端点,一头一尾,还有两个控制点,在之间。所以,必然最起码4个参数。加上一个颜色共计5个参数。从做到右,我们依次解释第一个(数组):表示起始点,数组内第一个参数为x,第二个参数为y(下同)第二个(数组):控制点1(接近起始点),数组内参数同上第三个(数组):控制点2(接近结束点),数组内参数同上第四个(数组):结束点,数组内参数同上第五个:颜色,可以用十六进制表示,比如:#ff0000绘制贝塞尔曲线有两个方法。但是大体步骤相同。1:、打开图片;2、绘图;3、保存或者输出1)、自行选择库,这种方法需要自行判断命名空间中的use也需要注意,比之前多了两个use?Grafika\Grafika;?use?Grafika\Gd\DrawingObject\CubicBezier?as?GdCubicBezier;?use?Grafika\Imagick\DrawingObject\CubicBezier?as?ImagickCubicBezier;??$editor?=?Grafika::createEditor();?$editor-open($image?,?yanying-smaller.jpg);?$editorName?=?Grafika::detectAvailableEditor();?if(Imagick===$editorName){?????$drawingObject?=?new?ImagickCubicBezier(array(42,?180),?array(230,?190),?array(42,?45),?array(300,?43),?#ff0000);?}?else?if?(Gd===$editorName)?{?????$drawingObject?=?new?GdCubicBezier(array(42,?180),?array(230,?190),?array(42,?45),?array(300,?43),?#ff0000);?}?$editor-draw(?$image,?$drawingObject?);?$editor-save($image,333/yanying-CubicBezier-1.jpg);??2)、可以让grafika自己去选择当前适合的类这种方法就是简单了许多,我们这次重新设定了参数,并且把线条颜色改为了黑色use?Grafika\Grafika;?$editor?=?Grafika::createEditor();?$editor-open($image?,?yanying-smaller.jpg);?$drawingObject?=?Grafika::createDrawingObject(CubicBezier,?array(42,?230),?array(230,?237),?array(42,?45),?array(230,?43),?#000000);?$editor-draw(?$image,?$drawingObject?);?$editor-save($image,333/yanying-CubicBezier-1.jpg);??效果不错,以后再搞验证码就简单多了2、绘制椭圆椭圆虽然看着难,但是只要搞清楚确定一个椭圆的几个基本参数就可以了。这里使用Ellipse参数来绘制椭圆。后面跟着一些绘制椭圆的形状、样式参数。我们从左到右描述椭圆的宽:px为单位椭圆的高:px为单位位置(数组):数组内第一个值为x(椭圆最左边距离图像最左边值),第二个值为y(椭圆最上边距离图形最上边值)边框宽度:单位px,如果设置为0,则表示无边框,默认为1px椭圆边框颜色:该值需要借助于color类,而不是简单的填入一个颜色字符串椭圆的填充值:该颜色同上我们创建一个200*100,距离左边50,上边75,边框为1,边框色为黑色,填充红色的椭圆。use?Grafika\Grafika;?use?Grafika\Color;?$editor?=?Grafika::createEditor();?$e
文档评论(0)