• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >建站教程 > PHP生成缩略图实例讲解

PHP生成缩略图实例讲解

作者:站长图库 字体:[增加 减小] 来源:互联网

站长图库向大家介绍了PHP生成缩略图,实例讲解等相关知识,希望对您有所帮助

这篇文章主要介绍了PHP生成缩略图实例讲解,文章列举了实例代码,有正好需要的同学可以借鉴下。


封装的方法函数:

<?php/** * 生成缩略图 * $imgSrc     图片源路径 * $thumbWidth   缩略图宽度 * $thumbHeight  缩略图高度 * $thumbSrc    缩略图路径 * $isCut     是否剪切图片 */function createThumbImg($imgSrc, $thumbWidth, $thumbHeight, $thumbSrc, $isCut = false) {    //1.获取图片的类型    $type = substr(strrchr($imgSrc, "."), 1);    //2.初始化图象    if ($type == "jpg" || $type == "jpeg") {        //创建一块画布,并从JPEG文件或URL地址载入一副图像        $sourceImg = imagecreatefromjpeg($imgSrc);    }elseif ($type == "gif") {        //创建一块画布,并从GIF文件或URL地址载入一副图像        $sourceImg = imagecreatefromgif($imgSrc);    }elseif ($type == "png") {        //创建一块画布,并从PNG文件或URL地址载入一副图像        $sourceImg = imagecreatefrompng($imgSrc);    }elseif ($type == "wbmp") {        //创建一块画布,并从WBMP文件或URL地址载入一副图像        $sourceImg = imagecreatefromwbmp($imgSrc);    }    //取得图像宽度    $width = imagesx($sourceImg);    //取得图像高度    $height = imagesy($sourceImg);     //3.生成图象    //缩略图的图象比例    $scale = ($thumbWidth) / ($thumbHeight);    //源图片的图象比例    $ratio = ($width) / ($height);    if (($isCut) == 1) {        //高度优先        if ($ratio >= $scale) {                    //创建真彩图像资源(imagecreatetruecolor()函数使用GDLibrary创建新的真彩色图像)            $newimg = imagecreatetruecolor($thumbWidth, $thumbHeight);            //图像处理            imagecopyresampled($newimg, $sourceImg, 0, 0, 0, 0, $thumbWidth, $thumbHeight, (($height) * $scale), $height);            //以JPEG格式将图像输出到浏览器或文件            ImageJpeg($newimg, $thumbSrc);        }        //宽度优先        if ($ratio < $scale) {                   $newimg = imagecreatetruecolor($thumbWidth, $thumbHeight);            imagecopyresampled($newimg, $sourceImg, 0, 0, 0, 0, $thumbWidth, $thumbHeight, $width, (($width) / $scale));            ImageJpeg($newimg, $thumbSrc);        }    } else {        if ($ratio >= $scale) {            $newimg = imagecreatetruecolor($thumbWidth, ($thumbWidth) / $ratio);            imagecopyresampled($newimg, $sourceImg, 0, 0, 0, 0, $thumbWidth, ($thumbWidth) / $ratio, $width, $height);            ImageJpeg($newimg, $thumbSrc);        }        if ($ratio < $scale) {            $newimg = imagecreatetruecolor(($thumbHeight) * $ratio, $thumbHeight);            imagecopyresampled($newimg, $sourceImg, 0, 0, 0, 0, ($thumbHeight) * $ratio, $thumbHeight, $width, $height);            ImageJpeg($newimg, $thumbSrc);        }    }    //销毁图像    ImageDestroy($sourceImg);}?>

调用示例:

<?php    //图片源路径    $imgSrc="D:/PHP/test/demo.jpg";    //缩略图路径    $thumbSrc="D:/PHP/test/thumb.jpg";    createThumbImg($path,100,100,$thumbSrc);?>



分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • PHP生成缩略图实例讲解

相关文章

  • HTML用JS导出Excel的五种方法
  • 织梦DedeCMS实现按键盘方向键实现上一篇下一篇翻
  • WordPress 彻底移除后台“隐私”设置功能
  • Phpcms V9广告位循环数据调用方法详解
  • DEDECMS获取本文地址标签
  • Photoshop制作绚丽的万花筒背景教程
  • dedecms页面获取会员状态的代码
  • DEDE内容页调用栏目的SEO标题、描述、关键字的方
  • Photoshop合成抽象风格的人物插画教程
  • Postman是如何实现接口的自动化测试

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • Photoshop巧用素材合成绚丽美女海报教程
    • Phootoshop制作金属质感的字体教程
    • 网站链接健康检查需要做的十件事情
    • DEDECMS注册成功页面加入马上激活链接转向注册邮
    • PHP如何删除Array数组指定key
    • PhotoShop设计制作梦幻炫彩光斑文字效果教程
    • PS制作立体3D烫金艺术文字效果的教程
    • 教你怎么使用Vue实现动画效果(附代码)
    • 如何解决微信公众平台php乱码问题
    • Photoshop设计绚丽魔幻效果的艺术字

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有