PHPThumb PHP 图片缩略图库


Posted in PHP onMarch 11, 2012

1、这是一个缩略图类库
它是一个开源的图片缩略图类库,可以完成多种复杂的图片缩略图生成和现实,使用起来非常的方便。

2、使用方法
这里有一篇关于其简单实用的说明,英文比较简单,就不翻译了:

Basic-Usage

3、API
这里有一个API列表:

PHPThumb API

不过非常可惜,API中并没有任何说明,只能对照其英文名称猜测其效果,当然即使猜对了,也要测试下看看是否是正确的。

4、样例
这里我也写了个简单调用它的方法,不过我是把该图片保存成为文件了,basic-usage中的例子全是直接在页面中输出的:

require_once 'phpthumb/ThumbLib.inc.php'; 
try { 
$thumb = PhpThumbFactory::create($realpath); 
} catch (Exception $e) { 
// handle error here however you'd like 
} 
$thumb->adaptiveResize($width, $height); 
$thumb->save($realpath . '.' . $width . 'x' . $height . '.png');

5、我用到的几个API
使用过程中,对几个API的理解逐渐加深,这里记录下:

resize ($maxWidth, $maxHeight)

resize方法是最常用的缩略图方法,它直接等比例将最大的边缩小到符合要求的高度/宽度,当图片宽高比与要求不一致时,将会有边显示空白。

adaptiveResize ($width, $height)

adaptiveResize方法是在一些特定情况下,不要求图片的完整,而要求显示特定宽高的最多内容。具体计算方式是:

当图片宽度大于所要求宽度,而高度一致时,取该高度下,从图片左右的中间去所要求的宽度;
当图片的高度大了并且宽度一致时,去该宽度下,图片上下居中位置取得所要求的高度;
当宽高都不正确时,先将图片缩放到所要求大小,再按前两条执行。
save ($fileName, $format = ‘GIF|JPG|PNG')

当对图片做好处理后,可以用save方法,将图片保存为format中所指示的编码之一,如果未指定编码,将以原编码方式保存。$fileName是要保存的路径。

PHP 相关文章推荐
window+nginx+php环境配置 附配置搭配说明
Dec 29 PHP
php高级编程-函数-郑阿奇
Jul 04 PHP
关于PHP实现异步操作的研究
Feb 03 PHP
phpmailer发送gmail邮件实例详解
Jun 24 PHP
PHP中substr_count()函数获取子字符串出现次数的方法
Jan 07 PHP
基于laravel制作APP接口(API)
Mar 15 PHP
php中10个不同等级压缩优化图片操作示例
Nov 14 PHP
thinkPHP5.0框架独立配置与动态配置方法
Mar 17 PHP
php 类中的常量、静态属性、非静态属性的区别
Apr 09 PHP
php魔法函数与魔法常量使用介绍
Jul 23 PHP
Laravel 5使用Laravel Excel实现Excel/CSV文件导入导出的功能详解
Oct 11 PHP
PHP实现财务审核通过后返现金额到客户的功能
Jul 04 PHP
php中使用cookie来保存用户登录信息的实现代码
Mar 08 #PHP
PHP 代码规范小结
Mar 08 #PHP
色色整理的PHP面试题集锦
Mar 08 #PHP
PHP 在5.1.* 和5.2.*之间 PDO数据库操作中的不同之处小结
Mar 07 #PHP
php打造属于自己的MVC框架
Mar 07 #PHP
smarty巧妙处理iframe中内容页的代码
Mar 07 #PHP
php 操作符与控制结构
Mar 07 #PHP
You might like
php预定义变量使用帮助(带实例)
2013/10/30 PHP
php数组索引的Key加引号和不加引号的区别
2014/08/19 PHP
php的GD库imagettftext函数解决中文乱码问题
2015/01/24 PHP
使用PHP实现生成HTML静态页面
2015/11/18 PHP
thinkPHP框架自动填充原理与用法分析
2018/04/03 PHP
Javascript 写的简单进度条控件
2008/01/22 Javascript
Node.js 学习笔记之简介、安装及配置
2015/03/03 Javascript
js/jquery判断浏览器类型的方法小结
2015/05/12 Javascript
整理AngularJS框架使用过程当中的一些性能优化要点
2016/03/05 Javascript
IE8利用自带的setCapture和releaseCapture解决iframe的拖拽事件方法
2016/10/25 Javascript
概述BootStrap中role="form"及role作用角色
2016/12/08 Javascript
浅谈Node模块系统及其模式
2017/11/17 Javascript
vue2.0+vue-dplayer实现hls播放的示例
2018/03/02 Javascript
JavaScript Math对象和调试程序的方法分析
2019/05/13 Javascript
vue 集成jTopo 处理方法
2019/08/07 Javascript
javascript利用键盘控制小方块的移动
2020/04/20 Javascript
[03:03]DOTA2校园争霸赛 济南城市决赛欢乐发奖活动
2013/10/21 DOTA
[02:12]2019完美世界全国高校联赛(春季赛)报名开启
2019/03/01 DOTA
[01:33]完美世界DOTA2联赛PWL S3 集锦第二期
2020/12/21 DOTA
python读写ini文件示例(python读写文件)
2014/03/25 Python
Python Socket传输文件示例
2017/01/16 Python
Python编程判断一个正整数是否为素数的方法
2017/04/14 Python
python3人脸识别的两种方法
2019/04/25 Python
Python Opencv任意形状目标检测并绘制框图
2019/07/23 Python
详解numpy.meshgrid()方法使用
2019/08/01 Python
django 做 migrate 时 表已存在的处理方法
2019/08/31 Python
python读取ini配置的类封装代码实例
2020/01/08 Python
main 主函数执行完毕后,是否可能会再执行一段代码,给出说明
2012/12/05 面试题
运动会广播稿300字
2014/01/10 职场文书
倡议书的写法
2014/08/30 职场文书
党校毕业心得体会
2014/09/13 职场文书
老公给老婆的检讨书(精华篇)
2014/10/18 职场文书
工会积极分子个人总结
2015/03/03 职场文书
学校教学工作总结2015
2015/05/19 职场文书
工作一年自我鉴定
2019/06/20 职场文书
Go语言编译原理之变量捕获
2022/08/05 Golang