PHP实现原比例生成缩略图的方法


Posted in PHP onFebruary 03, 2016

本文实例讲述了PHP实现原比例生成缩略图的方法。分享给大家供大家参考,具体如下:

<?php
$image = "jiequ.jpg"; // 原图
$imgstream = file_get_contents($image);
$im = imagecreatefromstring($imgstream);
$x = imagesx($im);//获取图片的宽
$y = imagesy($im);//获取图片的高
// 缩略后的大小
$xx = 140;
$yy = 200;
if($x>$y){
//图片宽大于高
  $sx = abs(($y-$x)/2);
  $sy = 0;
  $thumbw = $y;
  $thumbh = $y;
} else {
//图片高大于等于宽
  $sy = abs(($x-$y)/2.5);
  $sx = 0;
  $thumbw = $x;
  $thumbh = $x;
 }
if(function_exists("imagecreatetruecolor")) {
 $dim = imagecreatetruecolor($yy, $xx); // 创建目标图gd2
} else {
 $dim = imagecreate($yy, $xx); // 创建目标图gd1
}
imageCopyreSampled ($dim,$im,0,0,$sx,$sy,$yy,$xx,$thumbw,$thumbh);
header ("Content-type: image/jpeg");
imagejpeg ($dim, false, 100);
?>

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP模拟SQL Server的两个日期处理函数
Oct 09 PHP
使用php重新实现PHP脚本引擎内置函数
Mar 06 PHP
一个自定义位数的php多用户计数器代码
Mar 11 PHP
PHP如何解决网站大流量与高并发的问题
Jun 25 PHP
PHP利用header跳转失效的解决方法
Oct 24 PHP
PHP改进计算字符串相似度的函数similar_text()、levenshtein()
Oct 27 PHP
使用PHPExcel操作Excel用法实例分析
Mar 26 PHP
PHP json_encode() 函数详解及中文乱码问题
Nov 05 PHP
yii实现使用CUploadedFile上传文件的方法
Dec 28 PHP
Yii遍历行下每列数据的方法
Oct 17 PHP
JS+PHP实现用户输入数字后显示最大的值及所在位置
Jun 19 PHP
在 Laravel 6 中缓存数据库查询结果的方法
Dec 11 PHP
PHP获取昨天、今天及明天日期的方法
Feb 03 #PHP
PHP实现长文章分页实例代码(附源码)
Feb 03 #PHP
PHP开发中常用的十个代码样例
Feb 02 #PHP
必须收藏的php实用代码片段
Feb 02 #PHP
PHP执行linux命令常用函数汇总
Feb 02 #PHP
必须收藏的23个php实用代码片段
Feb 02 #PHP
如何批量清理系统临时文件(语言:C#、 C/C++、 php 、python 、java )
Feb 01 #PHP
You might like
重置版战役片段
2020/04/09 魔兽争霸
PHP文本数据库的搜索方法
2006/10/09 PHP
PHP set_time_limit(0)长连接的实现分析
2010/03/02 PHP
php生成短网址示例
2014/05/05 PHP
php单元测试phpunit入门实例教程
2017/11/17 PHP
Extjs中常用表单介绍与应用
2010/06/07 Javascript
JQuery分别取得每行最后一列和最后一行的示例代码
2013/08/18 Javascript
一个JavaScript用逗号分割字符串实例
2014/09/22 Javascript
jquery实现表格本地排序的方法
2015/03/11 Javascript
canvas快速绘制圆形、三角形、矩形、多边形方法介绍
2016/12/29 Javascript
Node.JS更改Windows注册表Regedit的方法小结
2017/08/18 Javascript
解析Vue2 dist 目录下各个文件的区别
2017/11/22 Javascript
JS实现留言板功能[楼层效果展示]
2017/12/27 Javascript
vue 根据数组中某一项的值进行排序的方法
2018/08/30 Javascript
webpack file-loader和url-loader的区别
2019/01/15 Javascript
vue移动端使用canvas签名的实现
2020/01/15 Javascript
js实现手表表盘时钟与圆周运动
2020/09/18 Javascript
Python使用Paramiko模块编写脚本进行远程服务器操作
2016/05/05 Python
Python中.py文件打包成exe可执行文件详解
2017/03/22 Python
详解python并发获取snmp信息及性能测试
2017/03/27 Python
解决Tensorboard可视化错误:不显示数据 No scalar data was found
2020/02/15 Python
Python读写压缩文件的方法
2020/07/30 Python
Python尾递归优化实现代码及原理详解
2020/10/09 Python
html5+css如何实现中间大两头小的轮播效果
2018/12/06 HTML / CSS
吃透移动端 1px的具体用法
2019/12/16 HTML / CSS
德国户外装备、登山运动和攀岩商店:tapir store
2020/02/12 全球购物
英国钻石公司:British Diamond Company
2020/02/16 全球购物
优秀女职工事迹材料
2014/02/06 职场文书
学历公证书范本
2014/04/09 职场文书
《最大的麦穗》教学反思
2014/04/17 职场文书
2014年社区综治工作总结
2014/11/17 职场文书
玄武湖导游词
2015/02/05 职场文书
小升初自荐信怎么写
2015/03/26 职场文书
大学生违纪检讨书范文
2015/05/07 职场文书
大学运动会加油稿
2015/07/22 职场文书
2016年综治宣传月活动宣传标语口号
2016/03/16 职场文书