转载请标明出处:http://blog.csdn.net/xx326664162/article/details/50961330 文章出自:薛瑄的博客

图片调整大小和缩放是有趣的,在实际应用中也是很重要的

用 resize(x,y) 调整图片大小

通常情况下,如果你的服务器或者 API 提供的图像是你需要的精确尺寸,这时是完美的情况下,在内存小号和图像质量之间的权衡。

在和 Picasso 比较后,Glide 有更加高效的内存管理。Glide 自动限制了图片的尺寸在缓存和内存中,并给到 ImageView 需要的尺寸。Picasso 也有这样的能力,但需要调用 fit() 方法。对于 Glide,如果图片不会自动适配到 ImageView,调用 override(horizontalSize, verticalSize) 。这将在图片显示到 ImageView之前重新改变图片大小。

Glide.with(context).load(UsageExampleListViewAdapter.eatFoodyImages[0]).override(600, 200) // resizes the image to these dimensions (in pixel). does not respect aspect ratio.into(imageViewResize);

当你还没有目标 view 去知道尺寸的时候,这个选项也可能是有用的。比如,如果 App 想要在闪屏界面预热缓存,它还不能测量 ImageView 的尺寸。然而,如果你知道这个图片多少大,用 override 去提供明确的尺寸。

缩放图像

现在,对于任何图像操作,调整大小真的能让长宽比失真并且丑化图像显示。在你大多数的使用场景中,你想要避免发生这种情况。Glide 提供了一般变化去处理图像显示。提供了两个标准选项:centerCropfitCenter

CenterCrop

CenterCrop()是一个裁剪技术,即缩放图像让它填充到 ImageView 界限内并且裁剪额外的部分。ImageView 可能会完全填充,但图像可能不会完整显示。

Glide.with(context).load(UsageExampleListViewAdapter.eatFoodyImages[0]).override(600, 200) // resizes the image to these dimensions (in pixel).centerCrop() // this cropping technique scales the image so that it fills the requested bounds and then crops the extra..into(imageViewResizeCenterCrop);

FitCenter

fitCenter() 是裁剪技术,即缩放图像让图像都测量出来等于或小于 ImageView 的边界范围。该图像将会完全显示,但可能不会填满整个 ImageView。

Glide.with(context).load(UsageExampleListViewAdapter.eatFoodyImages[0]).override(600, 200).fitCenter() .into(imageViewResizeFitCenter);

如果你对CenterCrop和FitCenter,想象不出是个什么操作,看看这个简短的介绍。

展望

在这篇博客中,你学会如何去对图像的大小和显示进行调整。这对创建一个很棒的应用非常具有帮助。在我们进入 Glide 进阶课程之前,我们来看一个 Glide 很独特的功能:显示 Gif 和 video。

参考:http://mrfu.me/2016/02/27/Glide_Image_Resizing_&_Scaling/

Glide 入门到精通之四——图片缩放和调整大小相关推荐

  1. 【Python】Python实战从入门到精通之四 -- 教你使用Python中字典

    本文是Python实战–从入门到精通系列的第四篇文章: Python实战从入门到精通第一讲–Python中的变量和数据类型 Python实战从入门到精通第二讲–Python中列表操作详解 Python ...

  2. Glide 入门到精通之二——图片加载

    http://mrfu.me/2016/02/27/Glide_Advanced_Loading/ 参考一 Glide不仅能从一个网络 URL 中加载, 也能从 Android 资源,文件和 Uri ...

  3. PyTorch实战福利从入门到精通之四——卷积神经网络CIFAR-10图像分类

    在本教程中,我们将使用CIFAR10数据集.它有类别:"飞机"."汽车"."鸟"."猫"."鹿".& ...

  4. lightroom 闪退_Lightroom从入门到精通系统课程,提升您图片后期处理的速度

    Lightroom入门到精通提升图片处理的速度摄影师必备修图效率工具 金秋9-10月我们在旅途中拍了那么多的照片成千上万张的原图急需后期处理近期看到很多影友留言说,能不能开设Lightroom这款修图 ...

  5. 【Python】Python实战从入门到精通之七 -- 教你深入理解异常处理

    本文是<Python实战从入门到精通>系列之第7篇 [Python]Python实战从入门到精通之一 -- 教你深入理解Python中的变量和数据类型 [Python]Python实战从入 ...

  6. 【Python】Python实战从入门到精通之六 -- 教你读取文件

    本文是<Python实战从入门到精通>系列之第6篇 [Python]Python实战从入门到精通之一 -- 教你深入理解Python中的变量和数据类型 [Python]Python实战从入 ...

  7. 【Python】Python实战从入门到精通之五 -- 教你使用文件写入

    本文是<Python实战从入门到精通>系列之第5篇 [Python]Python实战从入门到精通之一 -- 教你深入理解Python中的变量和数据类型 [Python]Python实战从入 ...

  8. 《SQL Server从入门到精通》

    书名 <SQL Server从入门到精通> 图片 时间 2017-6月 学习 书还可以看完不痛不痒 光盘里面是c的视频有趣这是要我学c的节奏啊,可以写一些基础sql语句也是一门语言叫T-s ...

  9. lightroom 闪退_子意老师Lightroom从入门到精通系统课程

    Lightroom入门到精通提升图片处理的速度摄影师必备修图效率工具 9月我们又将迎来开学季,正是学习听课的好日子~新的学年,大家好呀!近期看到很多影友留言说,能不能开设Lightroom这款修图软件 ...

最新文章

  1. fusioncharts相关问题
  2. Cocos2d-x之绘制线条
  3. 数据中心暖通设计若干思考
  4. Android技能树 — 树基础知识小结(一)
  5. java如何忽略过程值_如果值为null,如何告诉Jackson在序列化期间忽略某个字段?...
  6. python scrapy框架爬虫_Scrapy爬虫框架教程(一)-- Scrapy入门
  7. poj 2299 (归并排序)
  8. BZOJ2976 : [Poi2002]出圈游戏
  9. java 2个小数点_在java程序中取后面两个小数点的方法
  10. 7-88 二叉搜索树的结构 (30 分)
  11. Dubbo框架应用之(三)--Zookeeper注冊中心、管理控制台的安装及解说
  12. 介绍4个大神常用而你不常用的python函数--assert,map,filter,reduce
  13. Java JSON转换为map
  14. 习题——路由与交换机技术(五)
  15. 关于 Hypervisor的理解
  16. fast路由器服务器未响应,迅捷(FAST)无线路由器设置好了上不了网的解决方法
  17. 浙大数据结构习题笔记:顺序表与单链表
  18. 绿色版的谷歌浏览器chrome
  19. Codeforces Round #401 (Div. 2) D. Cloud of Hashtags(字符串 + 逆向思维)
  20. Percona Toolkit安装

热门文章

  1. 如何修改SVN的地址
  2. 安卓电池校正_笔记本电池损耗55%后一波三折的挽救经历
  3. HTTP 各种状态码代表的含义
  4. java8新特性总结——lambda表达式
  5. 北航计算机组成实验课,北航计算机组成实验Project4
  6. ios的四个核心部分介绍
  7. (免费分享)基于jsp,javaweb银行柜员业务绩效考核系统(带论文)
  8. 专家系统java编程_专家系统的Java实现
  9. springboot修改pdf内容
  10. 一文详说idea创建自定义的xml文件,比如创建mybatisConfig.xml等