首页 > 作文

PHP 缩放图片

更新时间:2023-04-07 05:47:46 阅读: 评论:0

对于网站前端上传的图片,在后台处理时有必要对其进行缩放以生成大小统一的缩略图。在php中,可以很方便的使用gd库来完成这一任务。下面的cimage类的静态方法createthumbnail()函数可以接受原图像文件名称,缩略图宽高,生成的缩略图文件名称等参数来生成保持原图纵横比的缩略图。函数基本乔迁祝福语上体现了php生成缩略图的方法,功能上还可以作进一步的扩充,如根据缩略图文件名称来生成指定格式的缩略图。

完整代码如下(win7+xampp2.5及linuxdev 2.6.18-128+apache测试通过):

//by morewindows ( )

class cimage
{
/**
* 生成保持原图纵横比的缩略图,支持.png .jpg .gif
* 缩略图类型统一为.png格式
* $srcfile 原图像文件名称
* $tow 缩略图宽
* $toh 缩略图高
* $tofile 缩略图文件名称,为空覆盖原图像文件
* @return bool
*/
public static function createthumbnail($srcfile, $tow, $toh, $tofile=””)
{
if ($tofile == “”)
{
$tofile = $srcfile;
}
$info = “”;
//返回含有4个单元的数组,0-宽,1-高,2-图像类型,3-宽高的文本描述。
//失败返回fal并产生警告。
$data = getimagesize($srcfile, $info);
if (!$data)
return fal;

//将文件载入到资源变量im中
switch ($data[2]) //1-gif,2-jpg,3-png
{
ca 1:
if(!function_exists(“imagecreatefromgif”))
{
echo “the gd can’t support .gif,田英章书法欣赏 plea u .jpeg or .png! <a href=’javascript:history.back();’>back</a>”;
exit();
}
$im = imagecreatefromgif($srcfile);
break;

ca 2:
if(!function_exists(“imagecreatefromjpeg”))
{
echo R福州科技职业技术学院20;the gd can’t support .jpeg, plea u other picture! <a href=’javascript:h扫黑除恶心得体会istory.back();’>back</a>”;
exit();
}
$im = imagecreatefromjpeg($srcfile);
break;

ca 3:
$im = imagecreatefrompng($srcfile);
break;
}

//计算缩略图的宽高
$srcw = imagesx($im);
$srch = imagesy($im);
$towh = $tow / $toh;
$srcwh = $srcw / $srch;
if ($towh <= $srcwh)
{
$ftow = $tow;
$ftoh = (int)($ftow * ($srch / $srcw));
}
el
插茱萸怎么读{
$ftoh = $toh;
$ftow = (int)($ftoh * ($srcw / $srch));
}

if (function_exists(“imagecreatetruecolor”))
{
$ni = imagecreatetruecolor($ftow, $ftoh); //新建一个真彩色图像
if ($ni)
{
//重采样拷贝部分图像并调整大小 可保持较好的清晰度
imagecopyresampled($ni, $im, 0, 0, 0, 0, $ftow, $ftoh, $srcw, $srch);
}
el
{
//拷贝部分图像并调整大小
$ni = imagecreate($ftow, $ftoh);
imagecopyresized($ni, $im, 0, 0, 0, 0, $ftow, $ftoh, $srcw, $srch);
}
}
el
{
$ni = imagecreate($ftow, $ftoh);
imagecopyresized($ni, $im, 0, 0, 0, 0, $ftow, $ftoh, $srcw, $srch);
}

//保存到文件 统一为.png格式
imagepng($ni, $tofile); //以 png 格式将图像输出到或文件
imagedestroy($ni);
imagedestroy($im);
return true;
}

摘自 morewindows

本文发布于:2023-04-07 05:47:44,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/ef3934096bd4b6e8be671815c3756a17.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:PHP 缩放图片.doc

本文 PDF 下载地址:PHP 缩放图片.pdf

标签:缩略图   图像   格式   文件名称
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图