folklore/laravel-image

基于Imagine的Laravel 4图像处理库,灵感来源于Croppa,便于基于URL进行图像处理

dev-main 2021-04-14 18:43 UTC

This package is auto-updated.

Last update: 2024-09-08 16:49:56 UTC


README

Laravel Image是一个基于PHP Imagine库的Laravel 4和5图像处理包。它受到Croppa的启发,可以使用特殊格式的URL进行图像处理。它支持基本的图像处理,如缩放、裁剪、旋转、翻转以及负片、灰度、伽玛、着色和模糊等效果。您还可以定义自定义过滤器以获得更大的灵活性。此库与本地文件系统和Laravel Filesystem(如Amazon S3)兼容。

Latest Stable Version
Build Status
Coverage Status
Total Downloads

简介

此包与其他图像处理库的主要区别在于,您可以直接在URL中使用参数来处理图像。处理后的图像版本将保存在与原始图像相同的路径中,创建文件的静态版本并绕过Laravel未来的请求(此行为可以禁用)。

例如,如果您有一个位于此URL的图像

/uploads/photo.jpg

要创建一个300x300的黑白图像版本,您使用以下URL

/uploads/photo-image(300x300-crop-grayscale).jpg

要生成图像的URL,您可以使用Image::url()方法

Image::url('/uploads/photo.jpg', 300, 300, ['crop', 'grayscale']);

<img src="<?=Image::url('/uploads/photo.jpg', 300, 300, ['crop', 'grayscale']))?>" />

或者,您可以使用Image::make()方法编程式地处理图像。它支持与Image::url()方法相同的所有选项。

Image::make('/uploads/photo.jpg', [
    'width' => 300,
    'height' => 300,
    'grayscale' => true
])->save('/path/to/the/thumbnail.jpg');

或者直接使用Imagine库

$thumbnail = Image::open('/uploads/photo.jpg')
            ->thumbnail(new Imagine\Image\Box(300, 300));

$thumbnail->effects()->grayscale();

$thumbnail->save('/path/to/the/thumbnail.jpg');

特性

基于Imagine

此包使用Imagine进行图像处理。Imagine与GD2、Imagick、Gmagick兼容,并支持许多功能

多个来源

您可以为图像定义多个来源。既可以是本地,也可以是云(通过Laravel文件系统)。

过滤器

此包还提供了一些内置过滤器,可直接使用(有关过滤器更多信息,请参阅过滤器文档

  • 缩放
  • 裁剪(带位置)
  • 旋转
  • 黑白
  • 反转
  • 伽玛
  • 模糊
  • 着色
  • 交错

安装

版本兼容性

Laravel 7及以上版本

依赖关系

服务器要求

安装

1- 使用Composer安装包。

$ composer require folklore/laravel-image

2- 将服务提供者添加到您的app/config/app.php文件中。

Folklore\Image\ServiceProvider::class,

3- 将外观添加到您的app/config/app.php文件中。

'Image' => Folklore\Image\Facade::class,

4- 发布配置文件和公共文件。

$ php artisan vendor:publish --provider="Folklore\Image\ServiceProvider"

5-config/image.php中查看配置文件。

文档

路线图

以下是我们在未来想要添加的一些功能。请随时合作并改进此库。

  • 用于处理图像的Artisan命令
  • 支持对多个文件进行批量操作