這篇文章主要講解了“thinkphp中的Image操作方法是什么”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“thinkphp中的Image操作方法是什么”吧!

成都創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站設(shè)計制作、成都網(wǎng)站設(shè)計、錫林浩特網(wǎng)絡(luò)推廣、微信小程序開發(fā)、錫林浩特網(wǎng)絡(luò)營銷、錫林浩特企業(yè)策劃、錫林浩特品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎;成都創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供錫林浩特建站搭建服務(wù),24小時服務(wù)熱線:18980820575,官方網(wǎng)址:chinadenli.net
不依賴任何框架
一般情況下都會安裝gd庫
需要Imagick請安裝 https://pecl.php.net/package/imagick
composer require whereof/think-image
$image = new \whereof\ThinkImage\Image();
默認(rèn)使用GD庫進(jìn)行圖像操作,如果需要使用Imagick庫操作的話,需要改成:
$image = new \whereof\ThinkImage\Image(\Think\Image::IMAGE_IMAGICK);
// 或者采用
$image = new \whereof\ThinkImage\Image('Imagick');下面來看下基礎(chǔ)的圖像操作功能的使用方法。
假設(shè)當(dāng)前入口文件目錄下面有一個1.jpg文件
使用open方法打開圖像文件進(jìn)行相關(guān)操作:
$image = \whereof\ThinkImage\Image();
$image->open('./1.jpg');也可以簡化成下面的方式:
$image = new \whereof\ThinkImage\Image(\whereof\ThinkImage\Image::IMAGE_GD,'./1.jpg'); // GD庫 // 或者 $image = new \whereof\ThinkImage\Image(\whereof\ThinkImage\Image::IMAGE_IMAGICK,'./1.jpg'); // imagick庫
可以獲取打開圖片的信息,包括圖像大小、類型等,例如:
$width = $image->width(); // 返回圖片的寬度 $height = $image->height(); // 返回圖片的高度 $type = $image->type(); // 返回圖片的類型 $mime = $image->mime(); // 返回圖片的mime類型 $size = $image->size(); // 返回圖片的尺寸數(shù)組 0 圖片寬度 1 圖片高度
使用crop和save方法完成裁剪圖片功能。
//將圖片裁剪為400x400并保存為corp.jpg
$image->crop(400, 400)->save('./crop.jpg');支持從某個坐標(biāo)開始裁剪,例如下面從(100,30)開始裁剪:
//將圖片裁剪為400x400并保存為corp.jpg
$image->crop(400, 400,100,30)->save('./crop.jpg');使用thumb方法生成縮略圖
// 按照原圖的比例生成一個最大為150*150的縮略圖并保存為thumb.jpg
$image->thumb(150, 150)->save('./thumb.jpg');可以支持其他類型的縮略圖生成,設(shè)置包括\whereof\ThinkImage\Image的下列常量或者對應(yīng)的數(shù)字:
IMAGE_THUMB_SCALE = 1 ; //等比例縮放類型 IMAGE_THUMB_FILLED = 2 ; //縮放后填充類型 IMAGE_THUMB_CENTER = 3 ; //居中裁剪類型 IMAGE_THUMB_NORTHWEST = 4 ; //左上角裁剪類型 IMAGE_THUMB_SOUTHEAST = 5 ; //右下角裁剪類型 IMAGE_THUMB_FIXED = 6 ; //固定尺寸縮放類型
// 生成一個居中裁剪為150*150的縮略圖并保存為thumb.jpg
$image->thumb(150, 150,\whereof\ThinkImage\Image::IMAGE_THUMB_CENTER)->save('./thumb.jpg');$image->thumb(150, 150,\whereof\ThinkImage\Image::IMAGE_THUMB_NORTHWEST)->save('./thumb.jpg');$image->thumb(150, 150,\whereof\ThinkImage\Image::IMAGE_THUMB_FILLED)->save('./thumb.jpg');$image->thumb(150, 150,\whereof\ThinkImage\Image::IMAGE_THUMB_FIXED)->save('./thumb.jpg');//將圖片裁剪為440x440并保存為corp.jpg
$image->crop(440, 440)->save('./crop.jpg');
// 給裁剪后的圖片添加圖片水印(水印文件位于./logo.png),位置為右下角,保存為water.gif
$image->water('./logo.png')->save("water.gif");
// 給原圖添加水印并保存為water_o.gif(需要重新打開原圖)
$image->open('./1.jpg')->water('./logo.png')->save("water_o.gif");water方法的第二個參數(shù)表示水印的位置,可以傳入下列Think\Imag類的常量或者對應(yīng)的數(shù)字:
IMAGE_WATER_NORTHWEST = 1 ; //左上角水印 IMAGE_WATER_NORTH = 2 ; //上居中水印 IMAGE_WATER_NORTHEAST = 3 ; //右上角水印 IMAGE_WATER_WEST = 4 ; //左居中水印 IMAGE_WATER_CENTER = 5 ; //居中水印 IMAGE_WATER_EAST = 6 ; //右居中水印 IMAGE_WATER_SOUTHWEST = 7 ; //左下角水印 IMAGE_WATER_SOUTH = 8 ; //下居中水印 IMAGE_WATER_SOUTHEAST = 9 ; //右下角水印
例如:
$image->open('./1.jpg')->water('./logo.png',\whereof\ThinkImage\Image::IMAGE_WATER_NORTHWEST)->save("water.jpg");還可以支持水印圖片的透明度(0~100,默認(rèn)值是80),例如:
$image->open('./1.jpg')->water('./logo.png',\whereof\ThinkImage\Image::IMAGE_WATER_NORTHWEST,50)->save("water.jpg");也可以支持給圖片添加文字水印(假設(shè)在入口文件的同級目錄下存在1.ttf字體文件),例如:
$image->open('./1.jpg')->text('ThinkPHP','./1.ttf',20,'#000000',\whereof\ThinkImage\Image::IMAGE_WATER_SOUTHEAST)->save("new.jpg");感謝各位的閱讀,以上就是“thinkphp中的Image操作方法是什么”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對thinkphp中的Image操作方法是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!
文章題目:thinkphp中的Image操作方法是什么
文章轉(zhuǎn)載:http://chinadenli.net/article34/jigipe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、網(wǎng)站改版、App設(shè)計、關(guān)鍵詞優(yōu)化、微信公眾號、App開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)