有时我们需要给图片加上版权信息,比如水印。laravel在图片上传中如何添加水印?1、安装 intervention/image 扩展包composer;require;intervention/image2、引入扩展包use;Intervention\Image\Facades\Image;3、Lara
有时我们需要给图片加上版权信息,比如水印。laravel在图片上传中如何添加水印?
1、安装 intervention/image 扩展包
composer require intervention/image
2、引入扩展包
use Intervention\Image\Facades\Image;
3、Laravel5.8之前版本需要修改 config/app.php 文件(其他版本可以跳过)
<?php
‘providers’ => [
Intervention\Image\ImageServiceProvider::class
]
‘aliases’ => [
‘Image’ => Intervention\Image\Facades\Image::class
]
?>
4、使用
img.jpg为上传原图,water.png为水印图片
<?php
$img = Image::make(public_path('Uploads/img.jpg'));
$img->insert(public_path('Uploads /water.png'),'bottom-right',10, 10);
$img->save();
?>
5、案例例子(laravel8)
<?php
/*
* 图片上传接口
* 文件名
* 文件夹名
* */
public function uploadImg($file,$folder){
$tmp = $file;
$folder=$folder ? $folder : "";
$path = '/Uploads'; //public下的Uploads
if ($tmp->isValid()) { //判断文件上传是否有效
$FileType = $tmp->getClientOriginalExtension(); //获取文件后缀
$FilePath = $tmp->getRealPath(); //获取文件临时存放位置
$FileName = $folder.'/'.date('Y-m-d') . uniqid() . '.' . $FileType; //定义文件名
Storage::disk('Uploads')->put($FileName, file_get_contents($FilePath)); //存储文件
$img = Image::make(public_path('Uploads/'.$FileName));
$img->insert(public_path('Uploads/config/water.png'),'bottom-right',10, 10);
$img->save();
return $data = [
'code' => 0,
'msg' => '图片上传成功',
'data'=>['src'=>$path . '/' . $FileName],
];
}
}
?>
6、相关参数:
left:水印在左边;
right:水印在右边;
top:水印在上方;
bottom:水印在下方;
bottom-left:水印在左下方;
bottom-right:水印在右下方;
top-left:水印在左上方;
top-right:水印在右上方;
laravel文件上传相关文章:Laravel图片上传简单封装及调用方法
沃梦达教程
本文标题为:如何给Laravel图片文件上传加水印功能
基础教程推荐
猜你喜欢
- thinkphp3.2.3框架动态切换多数据库的方法分析 2023-03-19
- php array分组,PHP中array数组的分组排序 2022-08-01
- PHP中的错误及其处理机制 2023-06-04
- 在Laravel中实现使用AJAX动态刷新部分页面 2023-03-02
- laravel 解决多库下的DB::transaction()事务失效问题 2023-03-08
- laravel ORM关联关系中的 with和whereHas用法 2023-03-02
- PHP实现Redis单据锁以及防止并发重复写入 2022-10-12
- PHP命名空间简单用法示例 2022-12-01
- PHP获取MySQL执行sql语句的查询时间方法 2022-11-09
- 使用PHP开发留言板功能 2023-03-13