Yii 使用intervention/image拓展實現圖像處理功能

 更新時間:2019年06月22日 10:47:24   作者:huaweichenai   我要評論
這篇文章主要介紹了Yii 使用intervention/image拓展實現圖像處理功能,需要的朋友可以參考下

一:安裝intervention/image拓展

composer require intervention/image

二:上傳文件

\Intervention\Image\ImageManagerStatic::make($_FILES['file']['tmp_name'])->save('upload.jpg');//file為上傳表單的name名
\Intervention\Image\ImageManagerStatic::make($_FILES['file']['tmp_name'])->resize(300, 200)->save('upload.jpg');//file為上傳表單的name名,并將上傳的圖片壓縮成300,200

同時實現單圖上傳和多圖上傳

if ($_FILES['file']) {
  $image = $_FILES['file']['tmp_name'];
  if (is_array($image)) {
    //多圖上傳
    foreach ($image as $key => $item) {
      \Intervention\Image\ImageManagerStatic::make($item)->save($key.'upload.jpg');
    }
  } else {
    //單圖上傳
    \Intervention\Image\ImageManagerStatic::make($image)->save('upload.jpg');
  }
}

三:添加水印

1:添加文字水印

添加文字水印主要使用到text方法

text方法參數說明

x(可選)

x定義第一個字符的基點。默認值:0

y(可選)

y定義第一個字符的基點。默認值:0

callback(可選)

關閉字體對象的回調,回調可配置:

(1)file:配置水印字體
(2)size:配置水印大小
(3)color:配置水印顏色
(4)align:配置水印水平對齊方式
(5)valign:配置是垂直對齊方式
(6)angle:配置水印旋轉角度
例:

//水印
ImageManagerStatic::make('upload.jpg')->text('水印文字',20,30,function($font){
  //配置水印字體
  $font->file(\Yii::getAlias('@webroot') . '/simsun.ttc');
  //配置水印大小
  $font->size(30);
  //配置水印顏色
  $font->color('#fff');
  //配置水印水平居左( left, right and center)
  $font->align('left');
  //配置水印垂直居下(top, bottom and middle)
  $font->valign('bottom');
  //配置水印旋轉角度
  $font->angle(45);
})->save('uploadWater.jpg');

2:添加圖片水印

添加圖片水印主要使用到insert方法

insert方法參數說明:

source:水印圖片地址

position:設置插入圖像的位置,參數可配置項為:

(1)top-left (default)
(2)top
(3)top-right
(4)left
(5)center
(6)right
(7)bottom-left
(8)bottom
(9)bottom-right

x:水平偏移量,默認0

y:垂直偏移量,默認0

例:

ImageManagerStatic::make('upload.jpg')->insert('water.jpg','bottom-left',10,10)->save('uploadWater.jpg');

這里是intervention/image拓展的一些基本操作,詳細可以參考: http://image.intervention.io/

總結

以上所述是小編給大家介紹的Yii 使用intervention/image拓展實現圖像處理功能,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的!

相關文章

  • PHP與SQL語句寫一句話木馬總結

    PHP與SQL語句寫一句話木馬總結

    在本篇文章里小編給大家整理的是關于PHP與SQL語句寫一句話木馬的相關知識點,有需要的朋友們學習下。
    2019-10-10
  • PHP設計模式之工廠模式(Factory Pattern)的講解

    PHP設計模式之工廠模式(Factory Pattern)的講解

    今天小編就為大家分享一篇關于PHP設計模式之工廠模式(Factory Pattern)的講解,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • PHP中你可能忽略的性能優化利器:生成器

    PHP中你可能忽略的性能優化利器:生成器

    性能優化是我們開發中必不可少的一部分,下面這篇文章主要給大家介紹了關于PHP中你可能忽略的性能優化利器:生成器的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-12-12
  • php一個找二層目錄的小東東

    php一個找二層目錄的小東東

    碰到個虛擬主機,iis7.0.里邊有上萬個站,只有腳本權限,沒命令行權限,但是可以跨目錄寫文件.如果能得到目標站的物理目錄,能立馬搞定.但是想盡一切辦法,也沒找到物理路徑.所以只有用腳本找了.手工找會累死的.一個php是找的,一個asp是寫的
    2012-08-08
  • PHP使用xmllint命令處理xml與html的方法

    PHP使用xmllint命令處理xml與html的方法

    這篇文章主要介紹了PHP使用xmllint命令處理xml與html的方法,較為詳細的講述了使用xmllint工具的各種命令處理XML文件與html的方法,是非常具有實用價值的技巧,需要的朋友可以參考下
    2014-12-12
  • 一些php項目中比較通用的php自建函數的詳解

    一些php項目中比較通用的php自建函數的詳解

    本篇文章是對一些php項目中比較通用的php自建函數進行了詳細的分析介紹,需要的朋友參考下
    2013-06-06
  • PHP中抽象類和抽象方法概念與用法分析

    PHP中抽象類和抽象方法概念與用法分析

    這篇文章主要介紹了PHP中抽象類和抽象方法概念與用法,較為詳細的分析了php中抽象類與抽象方法的關鍵字、定義、使用方法與相關注意事項,需要的朋友可以參考下
    2016-05-05
  • php實現比較兩個文件夾異同的方法

    php實現比較兩個文件夾異同的方法

    這篇文章主要介紹了php實現比較兩個文件夾異同的方法,涉及php針對目錄與文件名的遞歸操作技巧,需要的朋友可以參考下
    2015-06-06
  • 解析php做推送服務端實現ios消息推送

    解析php做推送服務端實現ios消息推送

    本篇文章是對php做推送服務端實現ios消息推送的方法進行了詳細的分析介紹,需要的朋友參考下
    2013-07-07
  • PHP中的多種加密技術及代碼示例解析

    PHP中的多種加密技術及代碼示例解析

    php的加密技術有很多種,很多人一不小心就會搞混,所以今天就花點時間說說PHP中的信息加密技術.有需要的朋友可以了解一下。
    2016-10-10

最新評論

湖北11选5走势图爱彩乐 乐享游戏棋牌 王中王鉄算盘开奖结果小说 河北快3开奖统计图 幸运11选5-首页 fxcm环球金汇理财平台 幸运农场 幸运三 玩极速快3怎么投在线 体彩排列3基本走势 上证指数分析图 欧冠历史积分榜 马德里竞技欧冠冠军 追光娱乐棋牌大厅下载 辽宁快乐十二走势图列表 快三湖北开奖结果查询 江西南昌麻将下载 一万元股票买卖手续费多少