使用imagine/imagine实现制作一个图片

码农天地 -
使用imagine/imagine实现制作一个图片

在一般的后台系统中,管理员一般有一个默认的头像,有的系统是直接给没有设置头像的用户分配一个默认的图片作为默认头像,但是有的系统是根据管理员的用户名来生成一张默认的图片,这里我们使用imagine/imagine来实现根据指定的文字生成一张图片

imagine/imagine文档地址:https://imagine.readthedocs.io/en/stable/

一:安装imagine/imagine

composer require imagine/imagine

二:imagine/imagine简单方法介绍

1:imagine/imagine实例化

在使用imagine/imagine之前,我们需要对imagine/imagine进行实例化,如:

$imagine = new ImagineGdImagine();//实例化Imagine类

或者

$imagine = new ImagineImagickImagine();

2:打开一个指定的图像

$image = $imagine->open('image.jpg');

3:创建一个指定尺寸和背景色的空白图像

$palette = new ImagineImagePaletteRGB();
$size  = new ImagineImageBox(400, 300);//设置空白图像尺寸为400*300
$color = $palette->color('#000', 0);//设置空白图像的背景色为#000,透明度为0,透明度的取值为0-100,值越大透明度越小,0表示完全透明,100表示完全不透明
$image = $imagine->create($size, $color);//创建空白图像

4:给指定的图像设置尺寸

$size = new ImagineImageBox(200, 200);
$image->resize($size)

5:给指定的图像增加文字水印

$text = '测试';//水印文字
$fontPath = 'fonts/msyh.ttf';//水印文字的字体
$white = $palette->color('fff');//水印文字的颜色
$font = $imagine->font($fontPath, 45, $white);//文字配置,参数一为设置字体,参数二为设置文字大小,参数三为设置文字颜色
$point = new ImagineImagePoint(40, 75);//设置文字的位置
$image->draw()
    ->text($text, $font, $point);

6:保存图片

$fileName = 'test.jpg';
$image->save($fileName, ['jpeg_quality' => 100]);//参数一为保存的图片地址,参数二为保存图片的质量等配置,常见配置可参考imagine/imagine文档

三:使用imagine/imagine实现制作一个指定文字的图片

实例如下:

$imagine = new ImagineGdImagine();//实例化Imagine类
//设置图片的尺寸和背景颜色
$size = new ImagineImageBox(200, 200);//设置图片的宽高
$palette = new ImagineImagePaletteRGB();
$color = $palette->color('#000', 0);//设置图片的背景颜色
//创建一个指定尺寸和指定背景的图片
$image = $imagine->create($size, $color);
//在图片上增加文字
$text = '测试';
$fontPath = 'fonts/msyh.ttf';
$white = $palette->color('fff');
$font = $imagine->font($fontPath, 45, $white);//文字配置,参数一为设置字体,参数二为设置文字大小,参数三为设置文字颜色
$point = new ImagineImagePoint(40, 75);//设置文字的位置
$image->draw()
    ->text($text, $font, $point);
//保存图片
$fileName = 'test.jpg';
$image->save($fileName, ['jpeg_quality' => 100]);

根据如上的代码就可以生成一个指定文字的图片,如:

特别申明:本文内容来源网络,版权归原作者所有,如有侵权请立即与我们联系(cy198701067573@163.com),我们将及时处理。

php介绍

PHP即“超文本预处理器”,是一种通用开源脚本语言。PHP是在服务器端执行的脚本语言,与C语言类似,是常用的网站编程语言。PHP独特的语法混合了C、Java、Perl以及 PHP 自创的语法。利于学习,使用广泛,主要适用于Web开发领域。

Tags 标签

图片php

扩展阅读

加个好友,技术交流

1628738909466805.jpg