我如何使用php
生成以下图像
我使用下面的php代码生成图像
<?php
header("Content-Type: image/png");
$im = imagecreate(300, 300);
$background_color = imagecolorallocate($im, 21, 125, 126);
$black = ImageColorAllocate($im, 0, 0, 0);
$blue = ImageColorAllocate($im, 0, 0, 255);
$white = ImageColorAllocate($im, 255, 255, 255);
ImageFilledEllipse($im, 50, 120, 75, 75, $white);
ImageFilledEllipse($im, 250, 100, 75, 75, $white);
imagepng($im);
imagedestroy($im);
?>
但是我得到了原始图像的平滑度
PHP生成的图片
答案 0 :(得分:2)
使用带有IMG_FILTER_SMOOTH
参数的imagefilter()
将过滤器应用于您的图片。
imagefilter($im, IMG_FILTER_SMOOTH,100);
答案 1 :(得分:1)
imagecreate
创建一个基于调色板的图像,该图像不包含抗锯齿(特别是因为您没有分配“中间”颜色)。请改为imagecreatetruecolor
。
答案 2 :(得分:0)
如果您要创建特定大小的图像,那么无论您如何操作,当您放大这样的图像时,您总是会得到不平滑的边缘。
问题是您在渲染PHP图像后正在放大浏览器。为什么不在javascript中使用基于矢量的库来绘制图像,这种方式在放大矢量图形时会以适当的比例重新绘制。消除你的锯齿状边缘。