我有一个网络摄像头,想为图像添加一些注释,但抗锯齿效果很奇怪。我将尝试解释:
我有这样的图像:
然后我添加半透明矩形并在其上放置文本:
// add background black rectangle
$draw->setFillColor('black');
$draw->setFillOpacity(0.5);
$draw->rectangle( 0, 10, $cam['width'], 70 ); // Draw the rectangle
// add lead text
$draw->setFont('ARIALBD.TTF');
$draw->setFontSize(14);
$draw->setFillColor('white');
$draw->annotation(20, 35, $cam['text']);
// add timestamp
$draw->setFont('ARIAL.TTF');
$draw->setFontSize(12);
$draw->setFillColor(new ImagickPixel('#f3ac01'));
$draw->annotation(20, 50, date("Y-m-d H:i:s"));
$img->drawImage($draw);
得到这样的东西:
嗯,但时间戳看起来很糟糕(看看分钟/秒)。尝试禁用抗锯齿:
$draw->setTextAntialias(false);
现在它看起来仍然很丑(看几个小时),但现在它有锋利的边缘:
我怎样才能得到智能抗锯齿的结果,像这样(我知道 PS 使用自己的抗锯齿,但 IMagickDraw 处理真正糟糕的结果):