• Github每日精选(第19期):PHP 图像处理Intervention Image


    Intervention Image

    Intervention Image 是一个PHP 图像处理和操作库,提供了一种更简单、更有表现力的方式来创建、编辑和组合图像。该软件包包括 ServiceProvidersFacades 以便于Laravel集成。

    Intervention Imagegithub上的地址在这里

    在这里插入图片描述
    Intervention Image 是一个开源的PHP 图像处理和操作库。它提供了一种创建、编辑和合成图像的更简单和富有表现力的方式,并支持当前最常见的两个图像处理库GD LibraryImagick

    编写该类是为了使 PHP 图像操作更容易和更具表现力。无论您是要创建图像缩略图、水印还是格式化大图像文件,Intervention Image 都能帮助您以尽可能少的代码行轻松管理每项任务。

    系统要求

    Intervention Image 需要以下组件才能正常工作。

    • PHP >= 5.4
    • 文件信息扩展

    以及以下图像库之一。

    • GD 库 (>=2.0) …或…
    • 想象一下 PHP 扩展 (>=6.5.7)

    安装

    安装 Intervention Image 的最佳方式是使用Composer快速轻松地安装。

    要安装最新版本,请运行以下命令。

    $ php composer.phar require intervention/image
    
    • 1

    现在你composer.json已经自动更新了,你可以要求刚刚创建的vendor/autoload.php文件来 PSR-4 自动加载库。

    下一步是决定是否要将 Intervention Image 集成到Laravel 框架中。如果您想在 Laravel 中使用该库,只需跳过以下步骤并继续Laravel 集成的描述。

    用法

    Intervention Image 根本不需要 Laravel 或任何其他框架。如果你想按原样使用它,你只需要要求作曲家自动加载文件来实例化图像对象,如下例所示。

    例子
    // include composer autoload
    require 'vendor/autoload.php';
    
    // import the Intervention Image Manager Class
    use Intervention\Image\ImageManager;
    
    // create an image manager instance with favored driver
    $manager = new ImageManager(['driver' => 'imagick']);
    
    // to finally create image instances
    $image = $manager->make('public/foo.jpg')->resize(300, 200);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    您也可以使用 ImageManager 的静态版本,如下例所示。

    静态示例
    // include composer autoload
    require 'vendor/autoload.php';
    
    // import the Intervention Image Manager Class
    use Intervention\Image\ImageManagerStatic as Image;
    
    // configure with favored image driver (gd by default)
    Image::configure(['driver' => 'imagick']);
    
    // and you are ready to go ...
    $image = Image::make('public/foo.jpg')->resize(300, 200);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    Laravel 中的集成

    Intervention Image 有对Laravel的可选支持,并带有一个服务提供者和 Facades以便于集成。包含在vendor/autoload.phpLaravel 中,因此您不必手动要求或自动加载。请参阅下面的说明。

    安装 Intervention Image 后,打开 Laravel 配置文件config/app.php并添加以下行。

    $providers数组中添加此包的服务提供者。

    Intervention\Image\ImageServiceProvider::class
    
    • 1

    将此包的外观添加到$aliases数组中。

    'Image' => Intervention\Image\Facades\Image::class
    
    • 1

    现在图像类将由Laravel自动加载。

    配置

    默认情况下,Intervention Image 使用 PHP 的 GD 库扩展来处理所有图像。如果您想切换到 Imagick,您可以通过运行以下 artisan 命令之一将配置文件拉入您的应用程序。

    在 Laravel 中发布配置
    $ php artisan vendor:publish --provider="Intervention\Image\ImageServiceProviderLaravelRecent"
    
    • 1
    在 Laravel <= 4 中发布配置
    $ php artisan config:publish intervention/image
    
    • 1

    在最近的Laravel应用程序中,配置文件被复制到config/image.php,在较旧的 Laravel 4 应用程序中,您可以在app/config/packages/intervention/image/config.php. 使用此副本,您可以在本地更改应用程序的映像驱动程序设置。

    例子
    // usage inside a laravel route
    Route::get('/', function() {
        $img = Image::make('foo.jpg')->resize(300, 200);
        return $img->response('jpg');
    });
    
    • 1
    • 2
    • 3
    • 4
    • 5
  • 相关阅读:
    母乳放冰箱能保存多久?怎么解冻?
    Transformers实战——Trainer和文本分类
    每日一题~合并二叉树
    在线扭蛋机小程序:商家稳占市场的新突破口
    QtWebApp搭建http服务器
    用户登录错误次数太多锁定账号
    走进向量计算:制作 OpenBLAS Docker 预构建产物镜像
    基于FPGA的飞机的小游戏
    leetcodeTop(100) 31链表排序
    bootstrap系列-2.css排版
  • 原文地址:https://blog.csdn.net/weixin_40425640/article/details/126007413