全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

php生成图片缩略图功能示例

本文实例讲述了php生成图片缩略图功能。分享给大家供大家参考,具体如下:

完整代码如下(为方便阅读,代码使用http://tools./code/phpformat进行了格式化处理):

<?php
/*
 * Created on 2011-3-18
 *
 * To change the template for this generated file go to
 * Window - Preferences - PHPeclipse - PHP - Code Templates
*/
/*构造函数-生成缩略图+水印,参数说明:
$srcFile-图片文件名,
$dstFile-另存文件名,
$markwords-水印文字,
$markimage-水印图片,
$dstW-图片保存宽度,
$dstH-图片保存高度,
$rate-图片保存品质*/
makethumb("1.jpg", "aa/b.jpg", "50", "50");
function makethumb($srcFile, $dstFile, $dstW, $dstH, $rate = 100, $markwords = null, $markimage = null) {
  $data = GetImageSize($srcFile);
  switch ($data[2]) {
    case 1:
      $im = @ImageCreateFromGIF($srcFile);
    break;
    case 2:
      $im = @ImageCreateFromJPEG($srcFile);
    break;
    case 3:
      $im = @ImageCreateFromPNG($srcFile);
    break;
  }
  if (!$im) return False;
  $srcW = ImageSX($im);
  $srcH = ImageSY($im);
  $dstX = 0;
  $dstY = 0;
  if ($srcW * $dstH > $srcH * $dstW) {
    $fdstH = round($srcH * $dstW / $srcW);
    $dstY = floor(($dstH - $fdstH) / 2);
    $fdstW = $dstW;
  } else {
    $fdstW = round($srcW * $dstH / $srcH);
    $dstX = floor(($dstW - $fdstW) / 2);
    $fdstH = $dstH;
  }
  $ni = ImageCreateTrueColor($dstW, $dstH);
  $dstX = ($dstX < 0) ? 0 : $dstX;
  $dstY = ($dstX < 0) ? 0 : $dstY;
  $dstX = ($dstX > ($dstW / 2)) ? floor($dstW / 2) : $dstX;
  $dstY = ($dstY > ($dstH / 2)) ? floor($dstH / s) : $dstY;
  $white = ImageColorAllocate($ni, 255, 255, 255);
  $black = ImageColorAllocate($ni, 0, 0, 0);
  imagefilledrectangle($ni, 0, 0, $dstW, $dstH, $white); // 填充背景色
  ImageCopyResized($ni, $im, $dstX, $dstY, 0, 0, $fdstW, $fdstH, $srcW, $srcH);
  if ($markwords != null) {
    $markwords = iconv("gb2312", "UTF-8", $markwords);
    //转换文字编码
    ImageTTFText($ni, 20, 30, 450, 560, $black, "simhei.ttf", $markwords); //写入文字水印
    //参数依次为,文字大小|偏转度|横坐标|纵坐标|文字颜色|文字类型|文字内容
    
  } elseif ($markimage != null) {
    $wimage_data = GetImageSize($markimage);
    switch ($wimage_data[2]) {
      case 1:
        $wimage = @ImageCreateFromGIF($markimage);
      break;
      case 2:
        $wimage = @ImageCreateFromJPEG($markimage);
      break;
      case 3:
        $wimage = @ImageCreateFromPNG($markimage);
      break;
    }
    imagecopy($ni, $wimage, 500, 560, 0, 0, 88, 31); //写入图片水印,水印图片大小默认为88*31
    imagedestroy($wimage);
  }
  ImageJpeg($ni, $dstFile, $rate);
  ImageJpeg($ni, $srcFile, $rate);
  imagedestroy($im);
  imagedestroy($ni);
}
?>

PS:这里再为大家推荐几款比较实用的图片处理工具供大家参考使用:

在线图片转换BASE64工具:
http://tools./transcoding/img2base64

ICO图标在线生成工具:
http://tools./aideddesign/ico_img

在线Email邮箱图标制作工具:
http://tools./email/emaillogo

在线图片格式转换(jpg/bmp/gif/png)工具:
http://tools./aideddesign/picext

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP图形与图片操作技巧汇总》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。


# php  # 生成  # 图片  # 缩略图  # thinkPHP实现上传图片及生成缩略图功能示例  # PHP基于ffmpeg实现转换视频  # 截图及生成缩略图的方法  # PHP基于GD库实现的生成图片缩略图函数示例  # PHP基于正则批量替换Img中src内容实现获取缩略图的功能示例  # 使用ThinkPHP生成缩略图及显示  # PHP生成图片缩略图类示例  # PHP缩略图生成和图片水印制作  # php生成缩略图质量较差解决方法代码示例  # 操作技巧  # 程序设计  # 相关内容  # 感兴趣  # 给大家  # 更多关于  # 所述  # 几款  # 进行了  # 面向对象  # 依次为  # 制作工具  # 再为  # 另存  # 背景色  # 格式转换  # 默认为  # 运算符  # 图片处理  # 编程技巧 


相关文章: 建站之星×万网:智能建站系统+自助建站平台一键生成  ,怎么用自己头像做动态表情包?  如何在阿里云高效完成企业建站全流程?  整蛊网站制作软件,手机不停的收到各种网站的验证码短信,是手机病毒还是人为恶搞?有这种手机病毒吗?  如何快速生成橙子建站落地页链接?  家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?  沈阳个人网站制作公司,哪个网站能考到沈阳事业编招聘的信息?  如何在建站宝盒中设置产品搜索功能?  如何确认建站备案号应放置的具体位置?  深入理解Android中的xmlns:tools属性  定制建站流程步骤详解:一站式方案设计与开发指南  上海网站制作开发公司,上海买房比较好的网站有哪些?  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  阿里云网站搭建费用解析:服务器价格与建站成本优化指南  详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)  唐山网站制作公司有哪些,唐山找工作哪个网站最靠谱?  TestNG的testng.xml配置文件怎么写  高端智能建站公司优选:品牌定制与SEO优化一站式服务  岳西云建站教程与模板下载_一站式快速建站系统操作指南  免费制作海报的网站,哪位做平面的朋友告诉我用什么软件做海报比较好?ps还是cd还是ai这几个软件我都会些我是做网页的?  c++ stringstream用法详解_c++字符串与数字转换利器  香港服务器建站指南:免备案优势与SEO优化技巧全解析  如何制作算命网站,怎么注册算命网站?  小捣蛋自助建站系统:数据分析与安全设置双核驱动网站优化  大连网站设计制作招聘信息,大连投诉网站有哪些?  建站上传速度慢?如何优化加速网站加载效率?  宝塔建站助手安装配置与建站模板使用全流程解析  如何通过WDCP绑定主域名及创建子域名站点?  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  如何通过虚拟主机快速搭建个人网站?  威客平台建站流程解析:高效搭建教程与设计优化方案  制作网站建设的公司有哪些,网站建设比较好的公司都有哪些?  已有域名能否直接搭建网站?  广州网站建站公司选择指南:建站流程与SEO优化关键词解析  浅谈Javascript中的Label语句  Avalonia如何实现跨窗口通信 Avalonia窗口间数据传递  如何在阿里云通过域名搭建网站?  实现虚拟支付需哪些建站技术支撑?  ,网页ppt怎么弄成自己的ppt?  焦点电影公司作品,电影焦点结局是什么?  深圳 网站制作,深圳招聘网站哪个比较好一点啊?  如何快速完成中国万网建站详细流程?  定制建站价位费用解析与套餐推荐全攻略  如何快速选择适合个人网站的云服务器配置?  建站主机如何选?性能与价格怎样平衡?  已有域名和空间如何快速搭建网站?  免费ppt制作网站,有没有值得推荐的免费PPT网站?  宝塔新建站点报错如何解决?  教学论文网站制作软件有哪些,写论文用什么软件 ?  广州网站设计制作一条龙,广州巨网网络科技有限公司是干什么的? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。