文档在这里:
http://image.intervention.io/...
文档中有个example,其中有这么一段代码:
$img->text('foo', 0, 0, function($font) {
$font->file('foo/bar.ttf');
$font->size(24);
$font->color('#fdf6e3');
$font->align('center');
$font->valign('top');
$font->angle(45);
});
上面example的问题:
基准坐标,也就是上面代码中的0, 0
是指一张图片的四个角的哪一个角?
参照上面的示例,写了一段demo,如下:
Image::canvas(160, 20)->text('1234567890', 80, 10, function ($font) {
$font->file('/fonts/Elephant.ttf');
$font->size(24);
$font->align('center');
$font->valign('middle');
});
上面的代码的功能是:
1、创建一个160*20像素的图片;
2、在图片上居中写上字符1234567890
。
我的demo的问题:
1、加上$font->file('/fonts/Elephant.ttf');
这一句,laravel会报错,GD库有点什么问题,不知怎么解决:
NotSupportedException in Font.php line 30:
Internal GD font () not available. Use only 1-5.
2、去掉$font->file('/fonts/Elephant.ttf');
这一句,可以生成一张图片,但是$font->size();
不起作用,无论把size()里面的数值设置为多少,文字大小都不会变,主要是没有填满整个图片,而是留了太多白,生成的图片如下所示:
请大神帮看看怎么回事。
关于第二个参数,文档上是这样的
也就是说可以传2种值:
第一种,路径 . 应该是相对web目录或者相对当前文件目录,类似例子里的
foo/bar
而不是/foo/bar
.第二种, 整数 1 - 5 使用内置字体.