php生成圆形图片

在 PHP 中生成圆形图片需要用到 GD 库提供的图像处理函数。以下是一个简单的示例代码:

// 创建一个 200x200 的正方形画布
$image = imagecreatetruecolor(200, 200);

// 生成背景色为白色的正方形
$bg_color = imagecolorallocate($image, 255, 255, 255);
imagefill($image, 0, 0, $bg_color);

// 定义圆心坐标和半径
$cx = 100;
$cy = 100;
$r = 80;

// 在画布上绘制一个圆形
$fg_color = imagecolorallocate($image, 255, 0, 0);
imagefilledellipse($image, $cx, $cy, $r * 2, $r * 2, $fg_color);

// 将正方形转换为圆形
for ($x=0; $x<200; $x++) {
    for ($y=0; $y<200; $y++) {
        $dist = sqrt(pow($x-$cx,2) + pow($y-$cy,2));
        if ($dist > $r) {
            imagesetpixel($image, $x, $y, $bg_color);
        }
    }
}

// 输出圆形图片
header('Content-type: image/png');
imagepng($image);

// 释放内存
imagedestroy($image);

 

你可能感兴趣的