我们使用Polygon绘制多边形,其中参数为
- 第一个参数为坐标点,是一个数组,其中该数组内有3个数组,每个数组有两个值,第一个值表示x,第二个值表示y
形如
array(array(0,0), array(50,0), array(0,50))
- 第二个参数为边框宽度,0为没有,从1开始,单位为px(默认为1)
- 第三个参数为边框颜色(默认为黑色)
- 第四个参数为填充色(默认白色)
我们试着画几个图形
- use GrafikaGrafika;
- use GrafikaColor;
- $editor = Grafika::createEditor();
- $editor->open($image , 'yanying-smaller.jpg');
- $editor->draw( $image, Grafika::createDrawingObject('Polygon', array(array(0,0), array(50,0), array(0,50)), 1));
- $editor->draw( $image, Grafika::createDrawingObject('Polygon', array(array(200-1,0), array(150-1,0), array(200-1,50)), 1));
- $editor->draw( $image, Grafika::createDrawingObject('Polygon', array(array(100,0), array(140,50), array(100,100), array(60,50)), 1, null, new Color('#FF0000')));
- $editor->save($image,'333/Polygon.jpg');

5、二次贝塞尔曲线
又称贝兹曲线或贝济埃曲线,是应用于二维图形应用程序的数学曲线
其形如这个样子

我们使用如下代码就可以很轻松的创建
- use GrafikaGrafika;
- $editor = Grafika::createEditor();
- $editor->open($image , 'yanying-smaller.jpg');
- $drawingObject = Grafika::createDrawingObject('QuadraticBezier', array(70, 250), array(20, 110), array(220, 60), '#FF0000');
- $editor->draw( $image, $drawingObject );
- $editor->save($image,'333/yanying-QuadraticBezier.jpg');
其中参数如下
- 第一个参数为起始点的坐标,是一个数组array(x,y)
- 第二个参数为控制点的坐标,也是数组,数组内分别为x,y
- 第三个参数为结束点的坐标,也是一个数组,数组内为x,y
- 最后一个参数为颜色,默认为黑色
当然你也可以使用另外一种方式来创建二次贝塞曲线
- use GrafikaGrafika;
- use GrafikaGdDrawingObjectQuadraticBezier as GdQuadraticBezier;
- use GrafikaImagickDrawingObjectQuadraticBezier as ImagickQuadraticBezier;
- $editorName = Grafika::detectAvailableEditor();
- $editor = Grafika::createEditor();
- $editor->open($image , 'yanying-smaller.jpg');
- if('Imagick'===$editorName){
- $drawingObject = new ImagickQuadraticBezier(array(70, 250), array(20, 110), array(220, 60), '#FF0000');
- } else if ('Gd'===$editorName) {
- $drawingObject = new GdQuadraticBezier(array(70, 250), array(20, 110), array(220, 60), '#FF0000');
- }
- $editor->draw( $image, $drawingObject );
- $editor->save($image,'333/yanying-QuadraticBezier-1.jpg');
6、创建矩形
矩形,其实和椭圆形差不多,只是有个别参数有些差异。 (编辑:PHP编程网 - 黄冈站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|