按比例生成缩略图文件及显示缩略图
2007-08-07 17:16
232 查看
<?Php
function CreateThumbnail($path,$newFileName,$width=100,$height=100)
{
@$s_img = getimagesize($path);
@$type = $s_img[2];
switch($type)
{
case 1 : @$im = imagecreatefromgif($path);break;
case 2 : @$im = imagecreatefromjpeg($path); break;
case 3 : @$im = imagecreatefrompng($path);break;
default: $im = false;
break;
}
@$s_width = imagesx($im);
@$s_height = imagesy($im);
$sizexy = getScaleImage($path,$width,$height);
$width = $sizexy[0];
$height = $sizexy[1];
if($im)
{
$im2 = imagecreatetruecolor($width,$height);
imagecopyresized ($im2,$im,0,0,0,0,$width,$height,$s_width,$s_height);
imagejpeg($im2,$newFileName);
}
return false;
}
function getScaleImage($image,$perfectWidth,$perfectHeight)
{
if (realpath($image) != false)
{
$sizeArray = getimagesize($image);
$sizeX = $sizeArray[ 0 ] ;
$sizeY = $sizeArray[ 1 ] ;
if ($perfectWidth!=0 && $perfectHeight==0)
{
if ($sizeX>$perfectWidth)
{
$scale = $sizeX/$sizeY ;
$sizeX = $perfectWidth;
$sizeY = floor($sizeX/$scale);
}
}
if ($perfectHeight != 0 && $perfectWidth == 0)
{
if ($sizeY > $perfectHeight)
{
$scale = $sizeY / $sizeX ;
$sizeY = $perfectHeight;
$sizeX = floor($sizeY / $scale);
}
}
if ($perfectHeight != 0 && $perfectWidth != 0)
{
$sizeX = $perfectWidth;
$sizeY = $perfectHeight;
}
$tmp[] = $sizeX;
$tmp[] = $sizeY;
}
else
{
$tmp[] = 0;
}
return $tmp;
}
$tm = getScaleImage("100_3353.jpg",0,0);
echo "<img src="100_3353.jpg" width='".$tm[0]."' height='".$tm[1]."' />";
foreach ($tm as $v)
{
echo $v."<br>";
}
//CreateThumbnail("100_3353.jpg","aa.gif",100,0);
?>
function CreateThumbnail($path,$newFileName,$width=100,$height=100)
{
@$s_img = getimagesize($path);
@$type = $s_img[2];
switch($type)
{
case 1 : @$im = imagecreatefromgif($path);break;
case 2 : @$im = imagecreatefromjpeg($path); break;
case 3 : @$im = imagecreatefrompng($path);break;
default: $im = false;
break;
}
@$s_width = imagesx($im);
@$s_height = imagesy($im);
$sizexy = getScaleImage($path,$width,$height);
$width = $sizexy[0];
$height = $sizexy[1];
if($im)
{
$im2 = imagecreatetruecolor($width,$height);
imagecopyresized ($im2,$im,0,0,0,0,$width,$height,$s_width,$s_height);
imagejpeg($im2,$newFileName);
}
return false;
}
function getScaleImage($image,$perfectWidth,$perfectHeight)
{
if (realpath($image) != false)
{
$sizeArray = getimagesize($image);
$sizeX = $sizeArray[ 0 ] ;
$sizeY = $sizeArray[ 1 ] ;
if ($perfectWidth!=0 && $perfectHeight==0)
{
if ($sizeX>$perfectWidth)
{
$scale = $sizeX/$sizeY ;
$sizeX = $perfectWidth;
$sizeY = floor($sizeX/$scale);
}
}
if ($perfectHeight != 0 && $perfectWidth == 0)
{
if ($sizeY > $perfectHeight)
{
$scale = $sizeY / $sizeX ;
$sizeY = $perfectHeight;
$sizeX = floor($sizeY / $scale);
}
}
if ($perfectHeight != 0 && $perfectWidth != 0)
{
$sizeX = $perfectWidth;
$sizeY = $perfectHeight;
}
$tmp[] = $sizeX;
$tmp[] = $sizeY;
}
else
{
$tmp[] = 0;
}
return $tmp;
}
$tm = getScaleImage("100_3353.jpg",0,0);
echo "<img src="100_3353.jpg" width='".$tm[0]."' height='".$tm[1]."' />";
foreach ($tm as $v)
{
echo $v."<br>";
}
//CreateThumbnail("100_3353.jpg","aa.gif",100,0);
?>
相关文章推荐
- 按比例生成缩略图文件及显示缩略图
- windows server 2008图片文件无法显示缩略图的解决方法
- 在ASP.NET中实现上传图片,并按比例生成缩略图
- asp.net文件上传功能(单文件,多文件,自定义生成缩略图,水印)
- java生成原比例缩略图
- 上传图片文件,生成缩略图,并写上版权信息
- Asp.net 图片等比例生成缩略图,外带一个数学公式
- 调用图片或视频文件时没有缩略图显示的原因和解决办法
- c# .net 生成缩略图(按比例) By shawl.qiu
- ThinkPHP-给已上传图片生成缩略图并在列表显示
- js实时上传文件显示缩略图
- 图片上传生成缩略图,并使用JQuery实现鼠标移动到缩略图显示相应的大图的例子
- 图片文件上传, 生成高质量缩略图 (asp.net c#)
- windows server 2008图片文件无法显示缩略图的解决方法
- xcode生成文件路径和路径显示
- 解决JasperReport生成PDF文件,中文不能显示的问题
- java生成可执行文件方法及关于图片正确显示的问题
- .net上传图片文件,生成缩略图,并写上版权信息
- php可生成缩略图的文件上传类实例
- Windows 7“文件无法显示缩略图”?检查系统盘可用空间看看