我想绘制一个带有两个字符串的矩形.我想第一个字符串是15pt大小(它的数字),第二个是10pt大小(标签).可以很容易地将一个尺寸的单个字符串绘制到矩形,我这样做:
$image = new Imagick('someimage.png');
$draw = new ImagickDraw;
$draw->setGravity(Imagick::GraviTY_CENTER);
$draw->setfont(__DIR__ . DS . 'TREBUCBD.TTF');
$draw->setfontsize(15);
$draw->annotation(0, 0, '50 points');
$image->drawImage($draw);
这里的想法是让“50分”中的“50”变大.
我尝试使用$draw-> push()将当前设置推送到堆栈,然后再次设置字体大小和注释,然后两个字符串重叠.我一直试图这样做几个小时.任何帮助非常感谢!
上面的实现是在PHP中,但我可能会通过使用命令行ImageMagick用法显示它的示例来实现它.
解决方法:
在“点”之前和“50”之后添加足够的空间,以便您很好地对齐它们:
<?PHP
$image = new Imagick('test.png');
$draw = new ImagickDraw;
$draw->setGravity(Imagick::GraviTY_CENTER);
$draw->setfontsize(30);
$draw->annotation(0, 0, '50 ');
$image->drawImage($draw);
$draw = new ImagickDraw;
$draw->setGravity(Imagick::GraviTY_CENTER);
$draw->setfontsize(15);
$draw->annotation(0, 0, ' points');
$image->drawImage($draw);
file_put_contents('test.png', $image->getimageBlob());
?>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。