Laravel 使用用户'生成包含文本的图像;姓名的首字母和姓氏的首字母

Laravel 使用用户'生成包含文本的图像;姓名的首字母和姓氏的首字母,laravel,intervention,Laravel,Intervention,我希望每个用户在注册时都有一个默认的配置文件映像。此图像将有他们的名字和姓氏的首字母 我制作了一个单色的普通图像,然后我试着用干涉图像在上面写下文字。它可以工作,但是字体太小,我不能增加它。我不知道干预中的最大字体大小是多少,因为文档中对此没有任何说明。 我还尝试使用不同的字体,将字体放在字体文件夹中,然后在$font->file('font/Poppins.ttf')中引用它。它抛出一个错误“未定义的偏移量” RegisterController.php 受保护函数创建(数组$data) {

我希望每个用户在注册时都有一个默认的配置文件映像。此图像将有他们的名字和姓氏的首字母

我制作了一个单色的普通图像,然后我试着用干涉图像在上面写下文字。它可以工作,但是字体太小,我不能增加它。我不知道干预中的最大字体大小是多少,因为文档中对此没有任何说明。 我还尝试使用不同的字体,将字体放在字体文件夹中,然后在
$font->file('font/Poppins.ttf')
中引用它。它抛出一个错误
“未定义的偏移量”

RegisterController.php

受保护函数创建(数组$data)
{
$img=Image::make('storage/avatars/1.jpg');
$img->text('HW',125,80,函数($font){
$font->file('font/Poppins.ttf');
$font->size(40);
$font->color('fdf6e3');
$font->align('center');
$font->角度(45);
});
$filename=time().'jpg';
$img->resize(150150)->save('storage/avatars/'。$filename);
返回用户::创建([
'firstname'=>$data['firstname'],
'lastname'=>$data['lastname'],
'email'=>$data['email'],
'password'=>Hash::make($data['password']),
“阿凡达”=>$filename,
]);
}

我有一个默认图像,它只有红色作为背景。每当一个人注册时,他必须将此图像作为默认配置文件图片,并在其上显示他的名字和姓氏的首字母。

您没有提供正确的font.ttf文件路径

改变这个

$font->file('font/Poppins.ttf');
对此

 $font->file(public_path('/fonts/font.ttf'));

试着把它放在public/fonts/文件夹中,像
$font->file(public_路径('/fonts/font.ttf'))那样调用它。
它可以工作。但是我不能增加字体大小。最大字体大小是多少?在不调整大小的情况下,能否检查生成的图像大小?你的字体大小应该是图像尺寸的60-70%,就像你的图像是100px;字体大小为60px就可以了。我们在
$font->size(40)
中给出的大小。这里的40是像素吗?是的,是像素。