gpt4 book ai didi

PHP Imagick如何最适合文本注释

转载 作者:可可西里 更新时间:2023-10-31 22:06:29 25 4
gpt4 key购买 nike

我正在将注释文本添加到工作正常的 newPseudoImage,但我想让文本缩放以适合图像大小。

有什么想法可以做到这一点吗?

$im = new Imagick();
$draw = new ImagickDraw();

$draw->setFillColor($color);
$draw->setFont($font);
$draw->setFontSize(($width, $height) / 100) * 15);
$draw->setGravity(Imagick::GRAVITY_CENTER);

$im->newPseudoImage($width, $height, "canvas:{$bg}");
$im->annotateImage($draw, 0, 0, 0, $text);

$draw->clear();
$draw->destroy();

$im->setImageFormat('gif');

header("Content-Type: image/gif");
echo $im;

最佳答案

我想你可以使用 imageftbbox功能来帮助您。

这将为您提供文本字符串的边界框,具有给定的 ttf 字体、大小和角度。

只要文本不适合图像,您就可以创建一个循环来增大或减小字体大小。

<?php

$bbox = imageftbbox(12, 0, 'Arial.ttf', 'This is a test');
$width_of_text = $bbox[2] - $bbox[0];

您可以查看 $width_of_text 并调整字体大小,只要字体未按您的喜好缩放即可。请记住,随着字体的增加,宽度和高度也会增加。

根据您尝试将其扩展到的目标,这可能会有所帮助。

关于PHP Imagick如何最适合文本注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7436815/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com