php生成不同大小的图片
来源:互联网 发布:斯巴鲁森林人STI 知乎 编辑:程序博客网 时间:2024/05/16 08:55
//生成不同大小的图function thumb($filename,$destination=null,$scale=0.5,$dst_w=null,$dst_h=null,$isReservedSource=true){ //获取原图片宽、高、类型 list($src_w,$src_h,$imagetype)=getimagesize($filename); /** * 返回结果说明 索引 0 给出的是图像宽度的像素值 索引 1 给出的是图像高度的像素值 索引 2 给出的是图像的类型,返回的是数字,其中1 = GIF,2 = JPG,3 = PNG,4 = SWF,5 = PSD,6 = BMP,7 = TIFF(intel byte order),8 = TIFF(motorola byte order),9 = JPC,10 = JP2,11 = JPX,12 = JB2,13 = SWC,14 = IFF,15 = WBMP,16 = XBM 索引 3 给出的是一个宽度和高度的字符串,可以直接用于 HTML 的 <image> 标签 索引 bits 给出的是图像的每种颜色的位数,二进制格式 索引 channels 给出的是图像的通道值,RGB 图像默认是 3 索引 mime 给出的是图像的 MIME 信息,此信息可以用来在 HTTP C * */ //若参数没有指定宽高,则按默认比例缩放 if(is_null($dst_w)||is_null($dst_h)){ $dst_w=ceil($src_w*$scale); $dst_h=ceil($src_h*$scale); } $mime=image_type_to_mime_type($imagetype);//返回值 image/jpg $createFun=str_replace("/", "createfrom", $mime); $outFun=str_replace("/", null, $mime); $src_image=$createFun($filename); $dst_image=imagecreatetruecolor($dst_w, $dst_h); imagecopyresampled($dst_image, $src_image, 0, 0, 0, 0, $dst_w, $dst_h, $src_w, $src_h); //若目录文件夹不存在则创建文件夹 if($destination&&!file_exists(dirname($destination))){ mkdir(dirname($destination),0777,true); } $dstFilename=$destination==null?getUniName().".".getExt($filename):$destination; $outFun($dst_image,$dstFilename);//将生成的缩略图储存到$dstFilename下 imagedestroy($src_image); imagedestroy($dst_image); if(!$isReservedSource){ unlink($filename); } return $dstFilename;}?>
0 0
- php生成不同大小的图片
- PHP生成不同颜色、不同大小的tag标签函数
- php GD库函数(保存不同大小的图片,即原图与缩放图片等)
- Matplotlib 生成不同大小的subplots
- JSP显示不同大小的图片
- js控制不同设备图片的大小
- TensorFLow 不同大小图片的TFrecords存取
- 针对不同的屏幕尺寸生成不同的大小
- php实现按指定大小等比缩放生成上传图片缩略图的方法
- Android生成一个指定大小的图片
- 生成规格大小的图片,质量压缩
- jmacick生成不同尺寸图片的应用
- php设置上传图片的大小
- PHP: 获取远程图片的大小
- 用PHP改变图片的尺寸大小
- 随机生成两个不同大小颜色的圆
- PhotoShop批量生成App大小不同的Icon
- 加载不同大小的图片消耗的内存大小
- Mybatis多条件批量更新
- 学习的步伐(一)Kotlin Primer编程之android简单项目
- 【R语言与数据挖掘】-回归分析
- 转:C/C++内存管理详解 堆 栈
- C++ std::enable_if解析
- php生成不同大小的图片
- 算法笔试题
- Docker 基础 - Dockerfile_0
- 使用Gmsh画非均匀网格
- SecureCRT 遇到一个致命的错误且必须关闭解决办法
- 被说了很多遍的设计模式---备忘录模式
- mysql 将字段time按天/月/年分组
- C语言中printf,scanf,getchar , puts,gets 的使用及区别
- cannot specify -s with -c or -S with multiple files