php使用GD库创建图片缩略图的方法

这篇文章主要介绍了php使用GD库创建图片缩略图的方法,涉及php使用GD库操作图片的相关技巧,需要的朋友可以参考下。

本文实例讲述了php使用GD库创建图片缩略图的方法,分享给大家供大家参考,具体分析如下:

上传页面的静态html代码:

  1. <html>
  2. <head>
  3. <title>文件上传</title>
  4. <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  5. </head>
  6. <H1>文件上传</H1>
  7. <form enctype="multipart/form-data" action="Upload.php" method="post">
  8.   <input name="upfile" type="file"><BR>
  9.   <input type="submit" value="Submit">
  10. </form>
  11. <body>
  12. </body>
  13. </html>

相应的Upload.php文件代码:

  1. <?php
  2. $uploadfile = "upfiles/".$_FILES['upfile']['name'];
  3. //上传后文件所在的文件名和路径
  4. $smallfile = "upfiles/small_".$_FILES['upfile']['name'];
  5. //上传后缩略图文件所在的文件名和路径
  6. if($_FILES['upfile']['type'] != "image/pjpeg")
  7. {
  8. echo "文件类型错误"; //输出错误信息
  9. }
  10. else
  11. {
  12. move_uploaded_file($_FILES['upfile']['tmp_name'], $uploadfile);
  13. //上传文件
  14. $dstW = 200; //设定缩略图的宽度
  15. $dstH = 200; //设定缩略图的高度
  16. $src_image = ImageCreateFromJPEG($uploadfile);
  17. //读取JPEG文件并创建图像对象
  18. $srcW = ImageSX($src_image); //获得图像的宽
  19. $srcH = ImageSY($src_image); //获得图像的高
  20. $dst_image = ImageCreateTrueColor($dstW,$dstH);
  21. //创建新的图像对象
  22. ImageCopyResized($dst_image,$src_image,0,0,0,0,$dstW,$dstH,$srcW,$srcH);
  23. //将图像重定义大小后写入新的图像对象
  24. ImageJpeg($dst_image,$smallfile); //创建缩略图文件
  25. echo "文件上传完成<BR>"; //输出上传成功的信息
  26. echo "<img src="$smallfile" mce_src="$smallfile"></img>";
  27. //在页面上显示缩略图
  28. }
  29. ?>