创建动态名称头像/图标,例如Google

时间:2019-07-28 10:45:15

标签: php image dynamic avatar

我想从名字的第一个字母(例如Google)创建徽标或个人资料头像。有什么方法或服务吗?

我试图学习有关使用php制作图像的代码,但这很难。有一次,我找到了一个有关此动态图像文本的网站,但没有找到。

1 个答案:

答案 0 :(得分:0)

您将在网上找到最简单的示例,这些示例将使用PHP的imagecreateimagestring函数,例如:

https://phppot.com/php/how-to-convert-text-to-image-using-php/

这是我根据上面的链接整理的快速示例代码,它创建的图像类似于Google头像:

$img = imagecreate(250, 250);

$textbgcolor = imagecolorallocate($img, 52, 152, 219);
$textcolor = imagecolorallocate($img, 255, 255, 255);

$txt = "AB";
$fontfile = "/arial.ttf";
imagettftext($img, 100, 0, 35, 170, $textcolor , $fontfile, $txt);
ob_start();
imagepng($img);
printf('<img src="data:image/png;base64,%s"/ width="100">', base64_encode(ob_get_clean()));

您需要将arial.ttf字体文件放置在与PHP文件相同的目录中,以使其起作用。

但是,在大多数美观的字体中,字母的宽度不同。因此,您将很难使文本居中,因为您不能对字谜“ MM”和“ II”使用相同的X值。我建议您使用一个库,该库具有扩展功能,例如在文本中间添加文本标记,我的选择是在gd-text上。