欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php利用GD库生成缩略图示例代码

程序员文章站 2022-04-21 13:26:14
...
GD库,是php处理图形的扩展库,GD库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片。在网站上GD库通常用来生成缩略图,或者用来对图片加水印,或者用来生成汉字验证码,或者对网站数据生成报表等。在PHP处理图像,可使用GD库,而GD库开始时是支持GIF的,但由于GIF使用了有版权争议的LZW算法,会引起法律问题,于是从 GD 库 1.6 版起所有的 GIF 支持都移除了,但是又在 GD 库 2.0.28 版起又加了回来。如果使用二者之间版本的 GD 库时 GIF 相关函数不可用。

本文为大家介绍下php如何利用GD库生成缩略图的,下面有个不错的示例,大家可以参考下

php利用GD库生成缩略图。

<form method="post" action="suo_do.php" enctype="multipart/form-data"> 
<input type="file" name="pic" /> 
<input type="submit" value="上传1" /> 
</form> 
<?php 
header("content-type:text/html;charset=gbk"); 
ini_set("date.timezone","Asia/chong"); 
//判断文件是否为空 
if(empty($_FILES)){ 
echo"上传文件过大"; 
exit; 
} 
//判断文件上传是否有错误 
if($_FILES['pic']['error']){ 
echo "上传文件"; 
exit; 
} 
//判断文件类型是否非法获取文件后缀 
$allowtype=array("jpg","png","jpeg","gif"); 
$a=explode('.',$_FILES['pic']['name']); 
$index=count($a)-1; 
$ex=strtolower($a[$index]); 
if(!in_array($ex,$allowtype)){ 
echo "上传文件非法"; 
exit; 
} 
$file=date('YmdHis').rand().".".$ex; 
$src=$_FILES['pic']['tmp_name']; 
$des="upload/".$file; 
$rs=move_uploaded_file($src,$des); 


//缩略图 
//读取已经上传图片 
$image=imagecreatefromjpeg($des); 
$a=getimagesize($des); 
$w=$a[0]; 
$h=$a[1]; 
if($w>$h){ 
$width=300; 
$height=$width/$w*$h; 
}else if($w<$h){ 
$height=300; 
$width=$height/$h*$w; 
}else{ 
$width=300; 
$height=300; 
} 
//创建空白新图片 
$newimage=imagecreatetruecolor($width, $height); 
//copy源图片内容 copy新图片 
imagecopyresized($newimage, $image, 0,0, 0,0, $width, $height, $w, $h); 
$filename="upload/s_".$file; 
imagejpeg($newimage,$filename);

以上就是php利用GD库生成缩略图示例代码的详细内容,更多请关注其它相关文章!

相关标签: php 代码 示例