PHP实现上传文件自动生成缩略图加文字实例代码_PHP教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:PHP教程:PHP处理网页表单
PHP _GET 和 _POST变量是用来获取表单中的信息的,比如用户输入的信息。 PHP表单操作 在我们处理HTML表单和PHP表单时,我们要记住的重要一点是:HTML页面中的任何一个表单元素都可以自动的用于PHP脚本: 表单举例: html bodyform action=welcome.php meth

  1. <? 
  2. //自动缩图srcFile原文件,大图;photo_small目标文件,小图;dstW,dstH是小图的宽,高。 
  3. function makethumb(srcFile,photo_small,dstW,dstH) { 
  4. data = GetImageSize(srcFile); 
  5. switch (data[2]) { 
  6. case 1: //图片类型,1是GIF图 
  7. im = @ImageCreateFromGIF(srcFile); 
  8. break; 
  9. case 2: //图片类型,2是JPG图 
  10. im = @imagecreatefromjpeg(srcFile); 
  11. break; 
  12. case 3: //图片类型,3是PNG图 
  13. im = @ImageCreateFromPNG(srcFile); 
  14. break; 
  15. srcW=ImageSX(im);//原始图片的宽度,也可以使用data[0] 
  16. srcH=ImageSY(im);//原始图片的高度,也可以使用data[1] 
  17. srcX=0;//来源图的坐标x,y 
  18. srcY=0
  19. if((srcW/dstW)>(srcH/dstH)){//得出要生成图片的长宽 
  20. dstWdstW2=dstW;//输出图片的宽度、高度 
  21. dstH2=srcH*dstW/srcW; 
  22. dstX=0;//输出图形的坐标x,y 
  23. dstY=(dstH-dstH2)/2; 
  24. else{ 
  25. dstHdstH2=dstH;//输出图片的宽度、高度 
  26. dstW2=srcW*dstW/srcH; 
  27. dstX=(dstW-dstW2)/2;//输出图形的坐标x,y 
  28. dstY=0
  29. ni=imagecreatetruecolor(dstW,dstH);//ImageCreate(dstW,dstH);画出空白花布的大小 
  30. colorBody=imagecolorallocate(ni,235,234,233);//定义背景颜色 
  31. imagefill(ni,0,0,colorBody);//填充背景颜色 
  32. ImageCopyResized(ni,im,dstX,dstY,srcX,srcY,dstW2,dstH2,srcW,srcH); 
  33. ImageJpeg(ni,photo_small); 
  34. //ImageJpeg(ni); //在显示图片时用,把注释取消,可以直接在页面显示出图片。 
  35. //生成带有版权信息的图片 
  36. function makeCopyright(srcFile,dstFile,dstW,dstH){ 
  37. data = GetImageSize(srcFile); 
  38. switch (data[2]) { 
  39. case 1: //图片类型,1是GIF图 
  40. srcImg = @ImageCreateFromGIF(srcFile); 
  41. break; 
  42. case 2: //图片类型,2是JPG图 
  43. srcImg = @imagecreatefromjpeg(srcFile); 
  44. break; 
  45. case 3: //图片类型,3是PNG图 
  46. srcImg = @ImageCreateFromPNG(srcFile); 
  47. break; 
  48. srcW=ImageSX(srcImg);//原始图片的宽度,也可以使用data[0] 
  49. srcH=ImageSY(srcImg);//原始图片的高度,也可以使用data[1] 
  50.  
  51. if((srcW/dstW)>(srcH/dstH)){//得出要生成图片的长宽 
  52. dstWdstW2=dstW;//输出图片的宽度、高度 
  53. dstH2=srcH*dstW/srcW; 
  54. else{ 
  55. dstHdstH2=dstH;//输出图片的宽度、高度 
  56. dstW2=srcW*dstW/srcH; 
  57. dstimg=imagecreatetruecolor(dstW2,dstH2);//画出空白花布的大小 
  58. ImageCopyResized(dstimg,srcImg,0,0,0,0,dstW2,dstH2,srcW,srcH); 
  59. //定义要写入的文字 
  60. word="";//文字 
  61. font=5;//字体 
  62. wordColor=imagecolorallocate(dstimg,0x08,0x00,0x00);//颜色 
  63. wordX=dstW2-200;//x坐标 
  64. wordY=dstH2-20;//y坐标 
  65. imagestring(dstimg,font,wordX,wordY,word,wordColor);//写入文字 
  66. ImageJpeg(dstimg,dstFile); 
  67. //ImageJpeg(ni); //在显示图片时用,把注释取消,可以直接在页面显示出图片。 
  68.  
  69. //调用 
  70. srcFile=pimg_name;//取得文件扩展名: 
  71. type=substr(strrchr(pimg_name,"."),1); 
  72. photo_ID=date("YmdHis"); 
  73. dst_small=photo_ID."_s.".type; //小图 
  74. dst_big=photo_ID."_b.".type; //大图 
  75. makethumb(pimg,"../cpzs/".dst_small,120,90);//120,90为小图宽,高 
  76. makeCopyright(pimg,"../cpzs/".dst_big,600,480); 
  77. //if(copy(pimg,"../cpzs/".dst_big)) 
  78. // echo "文件上传成功<br>"; 
  79. //else 
  80. // echo "文件上传失败<br>"; 
  81. ?> 
 

分享:动态网页制作PHP中的Cookies
Cookie通常用来验证或辨别一个用户。 Cookie是什么呢? Cookie通常用来验证或辨别一个用户。Cookie是通过服务器发送到用户计算机中的一个小文件。每次,当相同的计算机通过浏览器请求一个页面时,原先存储的cookie也会发送到服务器。你可以使用PHP来创建和获

来源:模板无忧//所属分类:PHP教程/更新时间:2012-06-11
相关PHP教程