php產生縮圖的方法:先建立PHP範例檔;然後透過「header("content-type:image/png");」設定產生圖片格式;最後透過「image_resize」方法按指定大小產生縮圖即可。
推薦:《PHP影片教學》
PHP產生圖片縮圖的三種方法:
1、把大圖縮略到縮圖指定的範圍內,可能有留白(原圖細節不丟失)
2、把大圖縮略到縮略圖指定的範圍內,不留白(原圖會居中縮放,把超出的部分裁剪掉)
3、把大圖縮略到縮圖指定的範圍內,不留白(原圖會剪下不符合比例的右邊和下邊)
下面是程式碼:
<?php // +---------------------------------------------------------------------- // | 把大图缩略到缩略图指定的范围内,可能有留白(原图细节不丢失) // +---------------------------------------------------------------------- $w = $_GET['w']?$_GET['w']:200; $h = $_GET['h']?$_GET['h']:200; $filename = "stand_test_".$w."_".$h.".jpg"; image_resize( 'test.jpg',$filename, $w, $h); header("content-type:image/png");//设定生成图片格式 echo file_get_contents($filename); function image_resize($f, $t, $tw, $th){ // 按指定大小生成缩略图,而且不变形,缩略图函数 $temp = array(1=>'gif', 2=>'jpeg', 3=>'png'); list($fw, $fh, $tmp) = getimagesize($f); if(!$temp[$tmp]){ return false; } $tmp = $temp[$tmp]; $infunc = "imagecreatefrom$tmp"; $outfunc = "image$tmp"; $fimg = $infunc($f); // 使缩略后的图片不变形,并且限制在 缩略图宽高范围内 if($fw/$tw > $fh/$th){ $th = $tw*($fh/$fw); }else{ $tw = $th*($fw/$fh); } $timg = imagecreatetruecolor($tw, $th); imagecopyresampled($timg, $fimg, 0,0, 0,0, $tw,$th, $fw,$fh); if($outfunc($timg, $t)){ return true; }else{ return false; } } ?>
<?php // +---------------------------------------------------------------------- // | 把大图缩略到缩略图指定的范围内,不留白(原图会居中缩放,把超出的部分裁剪掉) // +---------------------------------------------------------------------- $w = $_GET['w']?$_GET['w']:200; $h = $_GET['h']?$_GET['h']:200; $filename = "cut_test_".$w."_".$h.".jpg"; image_resize( 'test.jpg',$filename, $w, $h); header("content-type:image/png");//设定生成图片格式 echo file_get_contents($filename); // 按指定大小生成缩略图,而且不变形,缩略图函数 function image_resize($f, $t, $tw, $th){ $temp = array(1=>'gif', 2=>'jpeg', 3=>'png'); list($fw, $fh, $tmp) = getimagesize($f); if(!$temp[$tmp]){ return false; } $tmp = $temp[$tmp]; $infunc = "imagecreatefrom$tmp"; $outfunc = "image$tmp"; $fimg = $infunc($f); // $fw = 10; // $fh = 4; // $tw = 4; // $th = 2; // 把图片铺满要缩放的区域 if($fw/$tw > $fh/$th){ $zh = $th; $zw = $zh*($fw/$fh); $_zw = ($zw-$tw)/2; }else{ $zw = $tw; $zh = $zw*($fh/$fw); $_zh = ($zh-$th)/2; } // echo $zw."<br>"; // echo $zh."<br>"; // echo $_zw."<br>"; // echo $_zh."<br>"; // exit; $zimg = imagecreatetruecolor($zw, $zh); // 先把图像放满区域 imagecopyresampled($zimg, $fimg, 0,0, 0,0, $zw,$zh, $fw,$fh); // 再截取到指定的宽高度 $timg = imagecreatetruecolor($tw, $th); imagecopyresampled($timg, $zimg, 0,0, 0+$_zw,0+$_zh, $tw,$th, $zw-$_zw*2,$zh-$_zh*2); // if($outfunc($timg, $t)){ return true; }else{ return false; } } ?>
#
<?php // +---------------------------------------------------------------------- // | 把大图缩略到缩略图指定的范围内,不留白(原图会剪切掉不符合比例的右边和下边) // +---------------------------------------------------------------------- $w = $_GET['w']?$_GET['w']:200; $h = $_GET['h']?$_GET['h']:200; $filename = "strict_test_".$w."_".$h.".jpg"; image_resize( 'test.jpg',$filename, $w, $h); header("content-type:image/png");//设定生成图片格式 echo file_get_contents($filename); function image_resize($f, $t, $tw, $th){ // 按指定大小生成缩略图,而且不变形,缩略图函数 $temp = array(1=>'gif', 2=>'jpeg', 3=>'png'); list($fw, $fh, $tmp) = getimagesize($f); if(!$temp[$tmp]){ return false; } $tmp = $temp[$tmp]; $infunc = "imagecreatefrom$tmp"; $outfunc = "image$tmp"; $fimg = $infunc($f); if($fw/$tw > $fh/$th){ $fw = $tw * ($fh/$th); }else{ $fh = $th * ($fw/$tw); } $timg = imagecreatetruecolor($tw, $th); imagecopyresampled($timg, $fimg, 0,0, 0,0, $tw,$th, $fw,$fh); if($outfunc($timg, $t)){ return true; }else{ return false; } } ?>
以上是php產生縮圖的方法介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本文比較了酸和基本數據庫模型,詳細介紹了它們的特徵和適當的用例。酸優先確定數據完整性和一致性,適合財務和電子商務應用程序,而基礎則側重於可用性和

本文討論了確保PHP文件上傳的確保,以防止諸如代碼注入之類的漏洞。它專注於文件類型驗證,安全存儲和錯誤處理以增強應用程序安全性。

本文討論了在PHP中實施API速率限制的策略,包括諸如令牌桶和漏水桶等算法,以及使用Symfony/Rate-limimiter之類的庫。它還涵蓋監視,動態調整速率限制和手

本文討論了使用password_hash和pyspasswify在PHP中使用密碼的好處。主要論點是,這些功能通過自動鹽,強大的哈希算法和SECH來增強密碼保護

本文討論了OWASP在PHP和緩解策略中的十大漏洞。關鍵問題包括注射,驗證損壞和XSS,並提供用於監視和保護PHP應用程序的推薦工具。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境

Dreamweaver Mac版
視覺化網頁開發工具

Dreamweaver CS6
視覺化網頁開發工具