ホームページ  >  記事  >  バックエンド開発  >  phpのシンプルなサムネイルクラス|image.class.php_PHPチュートリアル

phpのシンプルなサムネイルクラス|image.class.php_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-20 11:16:50981ブラウズ

使用方法:


$img = 新しい画像;
$img->resize('dstimg.jpg', 'srcimg.jpg', 300, 400);
注: これは、比率に従って拡大縮小されます。 dstimg.jpg がターゲット ファイル、srcimg.jpg がソース ファイル、以下はターゲット ファイルの幅と高さです
$img->thumb('dstimg.jpg', 'scrimg.jpg', 300, 300);
注: これは比例サムネイルです。たとえば、dstimg.jpg がターゲット ファイル、srcimg.jpg がターゲット ファイルの幅と高さです。 これは GD ライブラリにとって面倒なだけです。Imagick を使用する場合、上記の関数を実装するのに必要な関数は 2 つだけです。ドキュメントを確認するとわかります。


クラスイメージ{

パブリック関数のサイズ変更($dstImg, $srcImg, $dstW, $dstH){
list($srcW, $srcH) = getimagesize($srcImg);
$scale = min($dstW/$srcW, $dstH/$srcH);
$newW =round($srcW * $scale);
$newH =round($srcH * $scale);
$newImg = imagecreatetruecolor($newW, $newH);
$srcImg = imagecreatefromjpeg($srcImg);
imagecopyresampled($newImg, $srcImg, 0, 0, 0, 0, $newW, $newH, $srcW, $srcH);
imagejpeg($newImg, $dstImg);
}

パブリック関数thumb($dstImg, $srcImg, $dstW, $dstH){
list($srcW, $srcH) = getimagesize($srcImg);
$scale = max($dstW/$srcW, $dstH/$srcH);
$newW = ラウンド($dstW/$scale);
$newH = ラウンド($dstH/$scale);
$x = ($srcW - $newW)/2;
$y = ($srcH - $newH)/2;
$newImg = imagecreatetruecolor($dstW, $dstH);
$srcImg = imagecreatefromjpeg($srcImg);
imagecopyresampled($newImg, $srcImg, 0, 0, $x, $y, $dstW, $dstH, $newW, $newH);
imagejpeg($newImg, $dstImg);
}

}

関数 createFromType($type, $srcImg){

$function = "imagecreatefrom$type";
return $function($srcImg);
}
//異なる画像フォーマットの問題を解決するために

http://www.bkjia.com/PHPjc/372434.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/372434.html技術記事使用法: $img = new iamge; $img-resize('dstimg.jpg', 'srcimg.jpg', 300, 400); 注: これは比率に従ってスケールされます。dstimg.jpg はターゲット ファイル srcimg です。 jpgはソースファイルです、後で...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。