使用gd庫(kù)實(shí)現(xiàn)php服務(wù)端圖片裁剪和生成縮略圖功能分享
裁剪示例:
最終裁剪成的圖片:
其中虛線框內(nèi)就是要裁剪出來(lái)的圖片,最終保存成100寬的圖片。代碼如下:
$src_path = '1.jpg';
//創(chuàng)建源圖的實(shí)例
$src = imagecreatefromstring(file_get_contents($src_path));
//裁剪開(kāi)區(qū)域左上角的點(diǎn)的坐標(biāo)
$x = 100;
$y = 12;
//裁剪區(qū)域的寬和高
$width = 200;
$height = 200;
//最終保存成圖片的寬和高,和源要等比例,否則會(huì)變形
$final_width = 100;
$final_height = round($final_width * $height / $width);
//將裁剪區(qū)域復(fù)制到新圖片上,并根據(jù)源和目標(biāo)的寬高進(jìn)行縮放或者拉升
$new_image = imagecreatetruecolor($final_width, $final_height);
imagecopyresampled($new_image, $src, 0, 0, $x, $y, $final_width, $final_height, $width, $height);
//輸出圖片
header('Content-Type: image/jpeg');
imagejpeg($new_image);
imagedestroy($src);
imagedestroy($new_image);
其實(shí)如果坐標(biāo)為(0,0),裁剪區(qū)域的寬高和源圖的寬高一致,那么就是生成縮略圖的功能了。
總結(jié)
這里只列出了php裁剪圖片的示例,屬于服務(wù)端的功能。如果客戶(hù)端有需要,推薦一個(gè)jquery的插件imageAreaSelect,兼容性非常不錯(cuò)。
相關(guān)文章
Laravel 5.5官方推薦的Nginx配置學(xué)習(xí)教程
這篇文章主要給大家介紹了關(guān)于Laravel 5.5官方推薦的Nginx配置學(xué)習(xí)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2017-10-10phpStudy vscode 搭建debug調(diào)試的教程詳解
這篇文章主要介紹了phpStudy vscode 搭建debug調(diào)試的教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-07-07laravel 實(shí)現(xiàn)根據(jù)字段不同值做不同查詢(xún)
今天小編就為大家分享一篇laravel 實(shí)現(xiàn)根據(jù)字段不同值做不同查詢(xún),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-10-10phpMyAdmin自動(dòng)登錄和取消自動(dòng)登錄的配置方法
這篇文章主要介紹了phpMyAdmin自動(dòng)登錄和取消自動(dòng)登錄的配置方法,需要的朋友可以參考下2014-05-05PHP+javascript制作帶提示的驗(yàn)證碼源碼分享
經(jīng)??吹膭e人網(wǎng)站上輸完驗(yàn)證碼,可以直接判斷正確與否,感覺(jué)體驗(yàn)非常不錯(cuò),趕緊給自己網(wǎng)站也加上,源碼分享給大家2014-05-05PHP 使用 Trait 解決 PHP 單繼承問(wèn)題詳解
這篇文章主要介紹了PHP 使用 Trait 解決 PHP 單繼承問(wèn)題,結(jié)合實(shí)例形式詳細(xì)分析了PHP 使用 Trait 實(shí)現(xiàn)PHP單繼承的相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下2020-04-04