博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php课程 8-32 如何使用gd库进行图片裁剪和缩放
阅读量:6002 次
发布时间:2019-06-20

本文共 1766 字,大约阅读时间需要 5 分钟。

php课程 8-32 如何使用gd库进行图片裁剪和缩放

一、总结

一句话总结:图片缩放到图片裁剪就是改变原图截取的位置以及截取的宽高。

 

1、电商网站那么多的图片,如果全部加载卡得慢的很,所以他们是怎么解决这个问题的(从图片处理的角度回答)?

图片缩放,大图缩放成小图

 

2、gd库中图片缩放和图片裁剪的关系?

图片缩放包括图片裁剪

把原图的所有东西弄到新图里面叫图片缩放,弄一部分就叫图片裁剪。

图片缩放到图片裁剪就是改变原图截取的位置以及截取的宽高

1 

 

3、gd库图片缩放和图片裁剪的函数是哪个?

14 imagecopyresampled($dst_image,$src_image,$dst_x,$dst_y,$src_x,$src_y,$dst_w,$dst_h,$src_w,$src_h);

 

 

4、gd库水印的函数是哪个?

12 imagecopy($dst_im,$src_im,$dst_x,$dst_y,$src_x,$src_y,$src_w,$src_h);

 

5、如何把图片放到画布中?

imagecreatefromjpeg('cs.jpg')
3 $src_image=imagecreatefromjpeg('cs.jpg');

 

6、如何创建一个新的画布?

imagecreatetruecolor
4 $dst_image=imagecreatetruecolor(200,200);

 

7、如何获取图片的各种信息?

getimagesize函数
4 function thumb($src_file,$dst_w,$dst_h){ 5 6 $srcarr=getimagesize($src_file);
 

 

 

二、如何使用gd库进行图片裁剪和缩放

1、相关知识

图片缩放:
imagecopyresampled($dst_image,$src_image,$dst_x,$dst_y,$src_x,$src_y,$dst_w,$dst_h,$src_w,$src_h);
图片裁剪:
imagecopyresampled($dst_image,$src_image,$dst_x,$dst_y,$src_x,$src_y,$dst_w,$dst_h,$src_w,$src_h);o
图片水印:
imagecopy($dst_im,$src_im,$dst_x,$dst_y,$src_x,$src_y,$src_w,$src_h);
[图片缩放完整的实例]

 

2、代码

图片缩放

1 

 

图片裁剪

1 

 

图片水印

1 

 

imagesx和imagesy获取图片宽高

1 

 

图片缩放完整实例

1 
($src_h/$dst_h)?($src_w/$dst_w):($src_h/$dst_h);33 34 $dst_w=floor($src_w/$scale);35 $dst_h=floor($src_h/$scale);36 37 $dst_image=imagecreatetruecolor($dst_w,$dst_h);38 39 $dst_x=0;40 $dst_y=0;41 $src_x=0;42 $src_y=0;43 44 45 imagecopyresampled($dst_image,$src_image,$dst_x,$dst_y,$src_x,$src_y,$dst_w,$dst_h,$src_w,$src_h);46 47 $t_name='t_'.basename($src_file);48 $t_dir=dirname($src_file);49 $s_file=$t_dir.'/'.$t_name;50 51 $imageout($dst_image,$s_file);52 }53 54 $src_file='imgs/cs.jpg';55 56 thumb($src_file,200,200);57 58 ?>

 

 

 

 

 

转载于:https://www.cnblogs.com/Renyi-Fan/p/9293096.html

你可能感兴趣的文章
P5205 【模板】多项式开根
查看>>
微博mini for Windows Phone 8 开发那些事
查看>>
redis文章索引
查看>>
OpenSSH利用处理畸形长度密码造成的时间差,枚举系统用户(CVE-2016-6210)
查看>>
Javascript回调函数
查看>>
可能是最简单的面向对象入门教程(二)为什么要有类型
查看>>
配置Openfiler做ISCS实验
查看>>
Maven启用代理访问
查看>>
LDAP & Implementation
查看>>
hdu 4597 Play Game
查看>>
hdu 1398 Square Coins (母函数)
查看>>
twitter storm 源码走读之5 -- worker进程内部消息传递处理和数据结构分析
查看>>
CCF 201503-4 网络延时
查看>>
.net获取select控件中的文本内容
查看>>
Windows 8 Metro App开发[5]导航栏(AppBar)的使用
查看>>
Effective Java -- 使可变性最小化
查看>>
开发环境中Docker的使用
查看>>
Redis 分布式锁
查看>>
IBM、HPUX、Solaris不同之处
查看>>
verilog 里面,always和always@(*)有区别吗?
查看>>