首页 > 解决方案 > 在 laravel 5.4 中调整图像大小的 API

问题描述

我正在使用 laravel 5.4 开发营销网站,我需要在网站上上传和加载大量图片,如果我每次都加载原始图片,它会变慢。所以我需要你的建议*

  1. 我应该以两种质量存储图像吗?(原始和调整大小)
  2. 存储原始图像,当它们加载到屏幕上时调整它们的大小?(需要一个API

请分享一些想法和解决方案!如果你有这样的API,请分享!

标签: laravelimageapi

解决方案


Laravel 没有默认的图像大小调整。但是大多数 laravel 开发人员在处理图像时使用“图像干预”。(便于使用)

要安装(图像干预):

第 1 步运行

 composer require intervention/image

第 2 步在您的 config/app.php 上:

在 $providers 数组中,添加以下内容:

  Intervention\Image\ImageServiceProvider::class

在 $aliases 数组中,添加以下内容:

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

如果您有问题,您的 GD 库丢失,请安装它

 PHP5: sudo apt-get install php5-gd
 PHP7: sudo apt-get install php7.0-gd

~~ 在你的控制器上使用 ~~

第 3 步在控制器顶部

use Intervention\Image\ImageManagerStatic as Image;

STEP 4 关于你的方法(有几种方法,但这会给你一个想法)

 if($request->hasFile('image')) {

   $image       = $request->file('image');
   $filename    = $image->getClientOriginalName();

   $image_resize = Image::make($image->getRealPath());              
   $image_resize->resize(300, 300);
   $image_resize->save(public_path('images/ServiceImages/' 
  .$filename));

}

推荐阅读