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
true
http://www.bkjia.com/PHPjc/928234.html
技術記事
PHP は、アップロードされた画像を指定されたサイズに拡大縮小してサムネイルを生成するメソッドを実装します。この記事では、PHP がアップロードされた画像を指定されたサイズに拡大縮小してサムネイルを生成する方法の例について説明します。みんなとシェアしましょう...