yii2手動新增圖片處理外掛Imagine

ken2999發表於2020-12-25

1、首先從官網下載yii2-imagine的擴充

下載地址:https://github.com/yiisoft/yii2-imagine

下載包名稱:yii2-imagine-master

2、然後再下載imagine的外掛包

下載地址:https://github.com/avalanche123/Imagine/releases

下載完成之後請解壓

修改資料夾名稱yii2-imagine-master為yii2-imagine

把這兩個資料夾放到你的yii專案的vendor\yiisoft目錄裡

之後修改該目錄下的extensions.php檔案;

在後面新增程式碼,目的是可以使用名稱空間引入這個外掛:

  'yiisoft/yii2-imagine' =>
  array (
        'name' => 'yiisoft/yii2-imagine',
        'version' => '2.2.0.0',
        'alias' =>
            array (
                '@yii/imagine' => $vendorDir . '/yiisoft/yii2-imagine/src',
            ),
  ),
  'yiisoft/Imagine' =>
    array (
        'name' => 'yiisoft/Imagine',
        'version' => '1.2.4.0',
        'alias' =>
            array (
                '@Imagine' => $vendorDir . '/yiisoft/Imagine/src',
            ),
    ),

然後在修改vendor\composer目錄下的autoload_psr4.php檔案;

在後面新增程式碼:

'yii\\imagine\\' => array($vendorDir . '/yiisoft/yii2-imagine'),

到此,外掛新增成功了,接下來是使用;

1.直接在控制器引入外掛:

use yii\imagine\Image;

2使用方法:

//1.生成縮圖
Image::thumbnail($filename, $width,$height,\Imagine\Image\ManipulatorInterface::THUMBNAIL_INSET)->save($savefilename, ['quality' => 100]);//生成新圖的質量
 
//引數說明:
$filename 原始檔的路徑
$savefilename 生成圖片後的儲存路徑
$width 縮圖的寬
$height 縮圖的高

//預設是剪裁模式
\Imagine\Image\ManipulatorInterface::THUMBNAIL_OUTBOUN 裁剪模式
\Imagine\Image\ManipulatorInterface::THUMBNAIL_INSET 填充模式


//2.剪裁圖片
Image::crop($filename, $width,$height,[0,0])->save($savefilename, ['quality' => 100]);//生成新圖的質量
 
 
//引數說明:
$filename 原始檔的路徑
$savefilename 生成圖片後的儲存路徑
$width 剪裁的寬
$height 剪裁的高
[0,0] 這個是剪裁的x,y點


//3.新增水印
Image::watermark($filename,$watermarkFilename,[0,0])->save($savefilename, ['quality' => 100]);//生成新圖的質量
 
 
//引數說明:
$filename 原始檔的路徑
$watermarkFilename 水印圖片
[0,0] 這個是新增水印的x,y點

轉載自:https://www.cnblogs.com/JahanGu/p/8038674.html

相關文章