Loading...

PHP使用GD函數切正方形圖像

Temperature: 0 °C

ChungChung
author_tools

基本上大都是等比例將圖片上傳....

但有時也會有需要正方形邊長的圖像需求

這時候還是得靠GD函式了...

例如要取360*360等邊的正方形

/*為亂數取名*/
$utime_img=date("YmdHis");
$flag=rand(0000,9999);//亂數取值
/*首先取得上傳的圖片*/
$src = imagecreatefromjpeg($_FILES["upload"]["tmp_name"]);
/*取得圖片的寬*/
$src_w = imagesx($src);
/*取得圖片的長*/
$src_h = imagesy($src);
/*依長與寬兩者最短的邊來算出要抓的正方形邊長*/
if( $src_w > $src_h){
$new_w = $src_h;
$new_h = $src_h;
}else{
$new_w = $src_w;
$new_h = $src_w;
}
/*以長方形的中心來取得正方形的左上方原點*/
$srt_w = ( $src_w - $new_w ) / 2;
$srt_h = ( $src_h - $new_h ) / 2;
/*定義一個圖形 ( 針對正方形圖形 )*/
$newpc = imagecreatetruecolor($new_w,$new_h);
/*抓取正方形的截圖*/
imagecopy($newpc, $src, 0, 0, $srt_w, $srt_h, $new_w, $new_h );
/*建立等比縮圖*/
$finpic = imagecreatetruecolor(360,360);
/*開始縮圖*/
imagecopyresampled($finpic, $newpc, 0, 0, 0, 0, 360, 360, $new_w, $new_h);
/*儲存縮圖到指定的目錄存放*/
imagejpeg($finpic,"URL".$_SESSION["filename"].$utime_img.$flag."s.jpg");
/*將檔名存到變數 $filename*/
$newimagename = $_SESSION["filename"].$utime_img.$flag."s.jpg";

得到新的圖像名稱後,便可將其寫入資料庫欄位備用。

台北市內湖區江南街71巷75弄 Go

https://innstory.com/story-PHP使用GD函數切正方形圖像-536
寫程式筆記

Prev
 秋蟹肥美水庫大閘蟹

Next
使用dpSyntaxHighlighter_程式碼色彩顯示工具讓紀錄程式心得更有可看性 

Nearby Attractions

台北市內湖區江南街71巷75弄-Nearby Attractions

  • 內湖郭氏古宅 Go
  • 殷海光故居 Go
  • 欽差行臺 Go
  • 臺北機廠 Go
  • 龍安坡黃宅濂讓居 Go
  • 新富市場 Go

About the Author

Chung

我是chung
網路工作者
主業是網站系統開發建置
副業是做夢,寫故事
作品請參考/teme.biz
做夢請參考/innstory.com
聯絡/chung.teme@gmail.com

#有人用筆寫日記,有人用歲月寫日記,有人用照片寫日記,而我,用innstory寫日記。

Visitor message

Leave some footprints to prove that you visited me

Recommended reading

Author's other related stories

PDO連接Mysql方式

PDO連接Mysql方式

pexelsphoto 最近因為源碼檢測的原因,才驚覺自己以前的系統撰寫的方式早已不再安全。 所以決...

使用jquery animate達到動態效果

使用jquery anima...

首先..雖然在寫系統時常常會用到jquery 但我並沒有針對他的指令有做太深入的研究... 剛好這一...

新舊交替,使用phpmyadm出現1064 error in CREATE TABLE … TYPEMYISAM錯誤

新舊交替,使用phpmyad...

sql55 系統移機的過程中,最重要的環節....我想...莫過於是系統的環境了....。 這次在協...

Recommended reading

Other stories happened at this address

5U脫逃記,哥要的是自由啊~

5U脫逃記,哥要的是自由啊~...

Mandy為了小傢伙添購了一個籠(安全柵欄)。 s 也在我充滿設計感的眼光下拼裝完成~ 為的是希望U...

PHP取得檔案路徑及檔案名稱

PHP取得檔案路徑及檔案名稱...

例如我有一支檔案是放在根目錄下的demo資料夾中,檔案名稱為test.php 、首先取得目前網頁的檔...

若不抬頭你永遠都不知道樹上有甚麼

若不抬頭你永遠都不知道樹上有...

s 給U~ 若不抬頭,你永遠都不知道樹上有甚麼。 若不爬上樹,你永遠都不知道樹頂有多精彩。

看來我們家有好些日子可以充滿南洋風味~

看來我們家有好些日子可以充滿...

看來我們家有好些日子可以充滿南洋風味~

apache下設置不顯示目錄列表 Indexes FollowSymLinks

apache下設置不顯示目錄...

pexelsphoto 選擇編輯httpd.conf文件 vi conf/httpd.conf 找到...

8個月了,開始進入了孕後期~

8個月了,開始進入了孕後期~...

週,個月了,開始進入了孕後期~ 小傢伙每天都賣力的扭動,深怕我們不知道他的存在似的.... 據Man...

Please select an option

error

Hi, thank you for your participation, but you cannot vote repeatedly~

Join innstory now and start recording your story.

"Innstory" is a place to store stories. We are committed to becoming a warm platform. Deepening the bonds between people is our direction.
We are convinced that the blockchain between people is not just a cold calculation. Join us now.

Wrong format