ホームページ  >  記事  >  バックエンド開発  >  PHP は、アップロードされた画像を指定されたサイズに比例して拡大縮小してサムネイルを生成するメソッドを実装します。_PHP チュートリアル

PHP は、アップロードされた画像を指定されたサイズに比例して拡大縮小してサムネイルを生成するメソッドを実装します。_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:11:31774ブラウズ

phpは、アップロードされた画像を指定されたサイズに比例して拡大縮小することでサムネイルを生成するメソッドを実現します

この記事の例では、PHP がスケーリングを実装して、指定されたサイズに従ってアップロードされた画像のサムネイルを生成する方法を説明します。参考のためにみんなで共有してください。具体的な実装方法は以下の通りです

コードをコピーします コードは次のとおりです:
/**
* *
*一定比率スケーリング
* @paramknown_type $srcImage ソース画像のパス
* @paramknown_type $toFile ターゲット画像パス
* @paramknown_type $maxWidth 最大幅
* @paramknown_type $maxHeight 最大高さ
* @paramknown_type $imgQuality 画質
* @return 不明
​*/
関数リサイズ($srcImage,$toFile,$maxWidth = 100,$maxHeight = 100,$imgQuality=100)
{

リスト($width, $height, $type, $attr) = getimagesize($srcImage); If($width < $maxWidth || $height < $maxHeight) を返します ; スイッチ ($type) {
ケース 1: $img = imagecreatefromgif($srcImage); ケース 2: $img = imagecreatefromjpeg($srcImage); ケース 3: $img = imagecreatefrompng($srcImage); }
$scale = min($maxWidth/$width, $maxHeight/$height) // ブルーム率を求める

If($scale $newWidth = フロア($scale*$width); $newHeight = フロア($scale*$height); $newImg = imagecreatetruecolor($newWidth, $newHeight); Imagecopyresampled($newImg, $img, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height
); $newName = ""; $toFile = preg_replace("/(.gif|.jpg|.jpeg|.png)/i","",$toFile);
スイッチ($type) {
ケース 1: if(imagegif($newImg, "$toFile$newName.gif", $imgQuality))
「$newName.gif」を返す
; ケース 2: if(imagejpeg($newImg, "$toFile$newName.jpg", $imgQuality))
「$newName.jpg」を返す
; ケース 3: if(imagepng($newImg, "$toFile$newName.png", $imgQuality))
「$newName.png」を返す
; デフォルト: if(imagejpeg($newImg, "$toFile$newName.jpg", $imgQuality))
「$newName.jpg」を返す
; }
イメージデストロイ($newImg); }
画像破壊($img); false を返します。 }


この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。




http://www.bkjia.com/PHPjc/928234.html

www.bkjia.com

tru​​e
http://www.bkjia.com/PHPjc/928234.html

技術記事

PHP は、アップロードされた画像を指定されたサイズに拡大縮小してサムネイルを生成するメソッドを実装します。この記事では、PHP がアップロードされた画像を指定されたサイズに拡大縮小してサムネイルを生成する方法の例について説明します。みんなとシェアしましょう...

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。