您正在使用 IPV4 [54.205.116.187] 访问本站,您本次已经查看了 1 页
用户名: 密 码: 验证码:     用QQ登录本站
首页 软件 编程 笑话 知识 公告 台风 日历 计算器
悟空收录网       [公益]保护绿色环境,构建和谐社会      

【腾讯云】 爆款2核2G3M云服务器首年 61元,叠加红包再享折上折      
[公益] 地球是我家,绿化靠大家      
2024年 清明节 006
2024年 劳动节 033
2025年 元 旦 278
2025年 春 节 306
综合数码金融娱乐服务报刊政府机构 推荐 排名 今日 申请 友情  
您现在的位置:首页 >> PHP >> 内容
本类新增
本类热门
用php实现生成缩略图的源代码
内容摘要: ?php/***功能:生成缩略图*作者:phpox*日期:ThuMay1709:57:05CST2007*/classCreatMiniature{//公共变量var$srcFile='';//原图var$echoType;//输出图片类型,link--不保存为文件;file--保存为文件var$im='';//临时变量var$srcW='';//原图宽va......
<?php

/**

*功能:生成缩略图

*作者:phpox

*日期:ThuMay1709:57:05CST2007

*/

classCreatMiniature

{

//公共变量

var$srcFile="";//原图

var$echoType;//输出图片类型,link--不保存为文件;file--保存为文件

var$im="";//临时变量

var$srcW="";//原图宽

var$srcH="";//原图高

//设置变量及初始化

functionSetVar($srcFile,$echoType)

{

if(!file_exists($srcFile)){

echo'源图片文件不存在!';

exit();

}

$this->srcFile=$srcFile;

$this->echoType=$echoType;

$info="";

$data=GetImageSize($this->srcFile,$info);

switch($data[2])

{

case1:

if(!function_exists("imagecreatefromgif")){

echo"你的GD库不能使用GIF格式的图片,请使用Jpeg或PNG格式!<ahref='javascript:go(-1);'>返回</a>";

exit();

}

$this->im=ImageCreateFromGIF($this->srcFile);

break;

case2:

if(!function_exists("imagecreatefromjpeg")){

echo"你的GD库不能使用jpeg格式的图片,请使用其它格式的图片!<ahref='javascript:go(-1);'>返回</a>";

exit();

}

$this->im=ImageCreateFromJpeg($this->srcFile);

break;

case3:

$this->im=ImageCreateFromPNG($this->srcFile);

break;

}

$this->srcW=ImageSX($this->im);

$this->srcH=ImageSY($this->im);

}

//生成扭曲型缩图

functionDistortion($toFile,$toW,$toH)

{

$cImg=$this->CreatImage($this->im,$toW,$toH,0,0,0,0,$this->srcW,$this->srcH);

return$this->EchoImage($cImg,$toFile);

ImageDestroy($cImg);

}

//生成按比例缩放的缩图

functionProrate($toFile,$toW,$toH)

{

$toWH=$toW/$toH;

$srcWH=$this->srcW/$this->srcH;

if($toWH<=$srcWH)

{

$ftoW=$toW;

$ftoH=$ftoW*($this->srcH/$this->srcW);

}

else

{

$ftoH=$toH;

$ftoW=$ftoH*($this->srcW/$this->srcH);

}

if($this->srcW>$toW||$this->srcH>$toH)

{

$cImg=$this->CreatImage($this->im,$ftoW,$ftoH,0,0,0,0,$this->srcW,$this->srcH);

return$this->EchoImage($cImg,$toFile);

ImageDestroy($cImg);

}

else

{

$cImg=$this->CreatImage($this->im,$this->srcW,$this->srcH,0,0,0,0,$this->srcW,$this->srcH);

return$this->EchoImage($cImg,$toFile);

ImageDestroy($cImg);

}

}

//生成最小裁剪后的缩图

functionCut($toFile,$toW,$toH)

{

$toWH=$toW/$toH;

$srcWH=$this->srcW/$this->srcH;

if($toWH<=$srcWH)

{

$ctoH=$toH;

$ctoW=$ctoH*($this->srcW/$this->srcH);

}

else

{

$ctoW=$toW;

$ctoH=$ctoW*($this->srcH/$this->srcW);

}

$allImg=$this->CreatImage($this->im,$ctoW,$ctoH,0,0,0,0,$this->srcW,$this->srcH);

$cImg=$this->CreatImage($allImg,$toW,$toH,0,0,($ctoW-$toW)/2,($ctoH-$toH)/2,$toW,$toH);

return$this->EchoImage($cImg,$toFile);

ImageDestroy($cImg);

ImageDestroy($allImg);

}

//生成背景填充的缩图

functionBackFill($toFile,$toW,$toH,$bk1=255,$bk2=255,$bk3=255)

{

$toWH=$toW/$toH;

$srcWH=$this->srcW/$this->srcH;

if($toWH<=$srcWH)

{

$ftoW=$toW;

$ftoH=$ftoW*($this->srcH/$this->srcW);

}

版权声明:本内容来源于互联网,如有侵犯您的版权,请联系站长,本站收到您的信息后将及时处理。
上一篇:四种好用的PHP自定义加密函数(可逆/不可逆)

 

下一篇:PHP将amr音频文件转换为mp3格式的操作细节

发布日期:2022/5/25
手机扫二维码直达本页
发布时间:15:23:12
点  击:9
录  入:齐天大圣
相关文章
Baidu
YiJiaCMS 7.3.8 build231228(MSSQL) 闽ICP备05000814号-1
本空间由腾讯云(轻量应用服务器)提供,Cloudflare提供加速防护
运行时间载入中.....