在php中是否有创建缩略图的功能?
答案 0 :(得分:3)
没有单一的功能可以为您创建缩略图,但有几个功能属于GD库,如imagecreatetruecolor
和imagecopyresampled
。你可以做的最好的事情是从一个教程开始,谷歌在这里最了解:
答案 1 :(得分:1)
你有一个用于图像创建的GD库函数...请按照URL
http://php.net/manual/en/book.image.php
答案 2 :(得分:0)
您可以使用以下代码来生成图像缩略图,而无需更改原始图像的纵横比。 $ img是存储原始图像的图像路径。
$sourceAppImgPath = $this->images->absPath($img);
$file_dimensions = getimagesize($sourceAppImgPath);
$ImageType = strtolower($file_dimensions['mime']);
switch(strtolower($ImageType))
{
case 'image/png':
$image = imagecreatefrompng($sourceAppImgPath);
break;
case 'image/gif':
$image = imagecreatefromgif($sourceAppImgPath);
break;
case 'image/jpeg':
$image = imagecreatefromjpeg($sourceAppImgPath);
break;
default:
return false; //output error
}
$origWidth = imagesx($image);
$origHeight = imagesy($image);
$maxWidth = 300;
$maxHeight =300;
if ($maxWidth == 0)
$maxWidth = $origWidth;
if ($maxHeight == 0)
$maxHeight = $origHeight;
$widthRatio = $maxWidth / $origWidth;
$heightRatio = $maxHeight / $origHeight;
$ratio = min($widthRatio, $heightRatio);
$thumb_width = (int)$origWidth * $ratio;
$thumb_height = (int)$origHeight * $ratio;