PHP生成缩略图(1)--简单缩略图
原理:就是将大图缩小并另存为小图
以此图为例,使其生成缩略图!

首先要使用到以下函数
imagecopyresampled() 重采样拷贝部分图像并调整大小
bool imagecopyresampled ( resource $dst_image , resource $src_image , int $dst_x , int $dst_y , int $src_x , int $src_y , int $dst_w , int $dst_h , int $src_w , int $src_h )
参数的意义:目标图片资源,原图资源,目标图片开始粘贴的X坐标,目标图片开始粘贴的y坐标,原图上开始复制的x坐标,原图上开始复制的y坐标,目标图的宽,目标图的高,原图的宽,原图的高,共十个参数! imagecreatetruecolor()新建一个真彩色图像
resource imagecreatetruecolor ( int $x_size , int $y_size )
参数的意义:画布的尺寸!
分析:确定两个函数的参数
原图

目标图:

代码如下:
//创建一个真彩色的图像,支持的颜色数较多
$dst = imagecreatetruecolor(200, 200); //目标图宽高
$src = imagecreatefromjpeg('./03.jpg'); //源图 //设置背景颜色并填充
$bgcolor = imagecolorallocate($dst, 255, 0, 0);
imagefill($dst,0,0,$bgcolor); $width = imagesx($src); //源图的宽度
$height = imagesy($src); //源图的高度 //imagecopyresampled($dst,$src,0,0,600,80,200,200,290,290); //裁剪 //将大图完整的生成缩略图
//imagecopyresampled($dst,$src,0,0,0,0,200,200,$width,$height); //缩略图按坐标摆放
imagecopyresampled($dst,$src,10,10,600,80,180,180,290,290); //输出到浏览器
header('content-type:image/png');
imagepng($dst); //销毁图片资源
imagedestroy($dst);
imagedestroy($src); ?>
结果如下:
裁剪:
imagecopyresampled($dst,$src,0,0,600,80,200,200,290,290);

将大图完整的生成缩略图:
imagecopyresampled($dst,$src,0,0,0,0,200,200,$width,$height);

缩略图按坐标摆放:
imagecopyresampled($dst,$src,10,10,600,80,180,180,290,290);

PHP生成缩略图(1)--简单缩略图的更多相关文章
- 帝国cms教程:帝国cms在列表页使用sys_ResizeImg函数自动生成不同大小的缩略图
先说说 ecms7.0的sys_ResizeImg这个函数 下面是在列表页使用方法 在右侧把使用程序代码打勾! 如下图: 例如你原先的列表页循环内容代码为: <li><img src ...
- 转: nginx使用image_filter生成缩略图 -- fasdfs海量图片缩略图整合
转: nginx使用image_filter生成缩略图 -- fasdfs海量图片缩略图整合 http://blog.csdn.net/CleverCode/article/details/522 ...
- wordpress4.4+版本自动生成一个768w像素缩略图的解决办法
4.4版本以后,wordpress增加了响应式图片的功能,目的是让图片能适应手机.平板等不同屏幕,但是我不想要这个功能,把缩略图大小全调成0,function.php里的相关函数全删除了, 上传图片还 ...
- 在RPA中使用Python批量生成指定尺寸的缩略图!比Ps好用!
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取 htt ...
- 快速生成网络mp4视频缩略图技术
背景 由于网络原因,在下载视频之前我们往往会希望能够先生成一些视频的缩略图,大致浏览视频内容,再确定是否应花时间下载.如何能够快速得到视频多个帧的缩略图的同时尽量少的下载视频的内容,是一个值得研究的问 ...
- 如何获取图片上传OSS后的缩略图 超简单
OSS是使用通过URL尾部的参数指定图片的缩放大小 图片路径后面拼接如下路径: ?x-oss-process=image/[处理类型],x_100,y_50[宽高等参数] ?x-oss-pro ...
- php中生成透明背景png缩略图程序
/** *$sourePic:原图路径 * $smallFileName:小图名称 * $width:小图宽 * $heigh:小图高 */function pngthumb($sourePic,$s ...
- jqthumb.js缩略图插件-让缩略图正常显示而不变形
插件介绍 项目中有图片的时候,有的宽大于高,有的宽小于高,尤其在做图片列表的时候,经常发现缩略图会有变形的.我们怎样来解决这一问题呢. 方法一:用photoshop来处理缩略图.小的项目还可以,大的项 ...
- 使用hadoop命令rcc生成Record 一个简单的方法来实现自己的定义writable对象
hadoop 的bin文件夹以下一个rcc命令,网上介绍非常少.看了一下源代码.发现能够用来生成 java和c++的hadoop Record 类代码,比起自己直接实现writable 接口.简单非常 ...
随机推荐
- ReentrantReadWriteLock源码分析(一)
此处源码分析,主要是基于读锁,非公平机制,JDK1.8. 问题: 1.ReentrantReadWriteLock是如何创建读锁与写锁? 2.读锁与写锁的区别是什么? 3.锁的重入次数与获取锁的线程数 ...
- 使用win10自带邮件应用发送文件
之前的电脑装过邮件客户端,想发送文件给别人时,只需要“右键文件——发送到邮件”,就能把文件作为附件发送给对方.新电脑win10系统自带邮件客户端,所以就想直接用.但是右键发送到邮件没有关联上,用不了. ...
- POJ 2245
//此题一看便是简单的回溯题用DFS+回溯便可以做出来了. #include <iostream> #define MAXN 20 using namespace std; int _m[ ...
- 最全面的 Android 编码规范指南
最全面的 Android 编码规范指南 本文word文档下载地址:http://pan.baidu.com/s/1bXT75O 1. 前言 这份文档参考了 Google Java 编程风格规范和 Go ...
- database lock
USE masterEXEC sp_lock select * from sys.sysprocesses where blocked<>0 DBCC INPUTBUFFER(120) k ...
- a标签发送邮件
<a href="Mailto:292808135@qq.com?CC=292808135@qq.com&Subject=反馈&Body=花式求喷~%0A您的不满就是我 ...
- Redis持久化配置-AOF
redis的持久化有rdb和aof两种. rdb是记录一段时间内的操作,一般的配置是一段时间内操作超过多少次就持久化.aof可以实现每次操作都持久化. 这里我们使用aof. 配置方式,打开redis的 ...
- MVC中分页的实现
我在 (www.helpqy.com) 中使用了下面的分页技术. 分页可以采用troygoode提供的开源包,其开源网站主页为:https://github.com/TroyGoode/PagedLi ...
- JavaScript窗口打开与关闭及如何使用opener使子窗口对父窗口进行操作
一.打开与关闭窗口 1.打开窗口:可以使用window对象中的Open()方法. newWindow = window.open(url,windowname,location); 参数说明: url ...
- 常用算法2 - 广度优先搜索 & 深度优先搜索 (python实现)
1. 图 定义:图(Graph)是由顶点的有穷非空集合和顶点之间边的集合组成,通常表示为:G(V,E),其中,G表示一个图,V是图G中顶点的集合,E是图G中边的集合. 简单点的说:图由节点和边组成.一 ...