📜  PHP | imagickdraw bezier()函数(1)

📅  最后修改于: 2023-12-03 14:45:17.344000             🧑  作者: Mango

PHP | imagickdraw bezier()函数

介绍

imagickdraw::bezier()函数是将贝塞尔曲线添加到绘图的方法。贝塞尔曲线主要用于平滑的曲线绘制,它由多个线性段和控制点组成。 imagickdraw::bezier()函数采用一系列的坐标点(顶点和控制点)作为输入参数。

语法
public ImagickDraw::bezier ( array $coordinates )
参数

coordinates : 描述每个顶点及其控制点的数组。该数组需要包含至少6个坐标点(x1,y1,x2,y2...xn,yn)

返回值

该函数没有返回值。

示例
<?php
$draw = new \ImagickDraw();

// 设置线宽
$draw->setStrokeWidth(2);

// 设置颜色
$draw->setStrokeColor('orange');

// 贝塞尔曲线坐标点
$coordinates = array(
  10, 50,
  75, 25,
  75, 100,
  200, 50
);

// 绘制贝塞尔曲线
$draw->bezier($coordinates);

// 输出图像
$image = new \Imagick();
$image->newImage(300, 150, 'white');
$image->setImageFormat('png');
$image->drawImage($draw);
header('Content-Type: image/png');
echo $image;
输出结果

bezier_image

注意事项
  • 参数coordinates最少需要6个坐标点。
  • 如果说你不清楚如何构建一个贝塞尔曲线的话,可以借助线上的一些工具进行实现或是使用某些图形软件进行实现。
  • 在贝塞尔曲线的绘制中,顶点用于定义路径,控制点用于控制曲率。具体可以查看贝塞尔曲线的介绍。