Glide入門教程——5.圖片大小調(diào)整 & 縮放

Glide — 圖片大小調(diào)整 & 縮放

原文:Image Resizing & Scaling
作者:Norman Peitek
翻譯:Dexter0218

在前幾篇文章中,你已經(jīng)學(xué)習(xí)了從各種源中加載圖片厢汹,并且使用不同形式的占位圖螟深。如果你不知道圖片的大小的影響,這篇文章里介紹的大小調(diào)整和縮放是相當(dāng)重要的烫葬。

Glide 系列概覽

  1. 入門簡(jiǎn)介
  2. 高級(jí)加載
  3. 適配器(ListView, GridView)
  4. 占位圖& 淡入淡出動(dòng)畫
  5. 圖片大小 & 縮放
  6. 播放GIF & 視頻
  7. 緩存基礎(chǔ)
  8. 請(qǐng)求優(yōu)先級(jí)
  9. 縮略圖
  10. 回調(diào):定制view中使用SimpleTarget和ViewTarget
  11. 通知欄和桌面小控件的圖片加載
  12. 異常: 調(diào)試和報(bào)錯(cuò)處理
  13. 自定義變換
  14. 用animate()定制動(dòng)畫
  15. 整合網(wǎng)絡(luò)協(xié)議棧
  16. 用Modules定制Glide
  17. Glide Module 案例: 接受自簽名HTTPS證書
  18. Glide Module 案例: 自定義緩存
  19. Glide Module 案例: 通過加載自定義大小圖片優(yōu)化
  20. 動(dòng)態(tài)使用 Model Loaders
  21. 如何旋轉(zhuǎn)圖片
  22. 系列綜述

resize(x, y)調(diào)整圖片大小

理想情況下界弧,你的服務(wù)器或者API能夠返回給你恰好所需分辨率的圖片凡蜻,這是在網(wǎng)絡(luò)帶寬、內(nèi)存消耗和圖片質(zhì)量下的完美方案垢箕。

跟Picasso比起來(lái)划栓,Glide在內(nèi)存上占用更優(yōu)化。Glide在緩存和內(nèi)存里自動(dòng)限制圖片的大小去適配ImageView的尺寸条获。Picasso也有同樣的能力忠荞,但需要調(diào)用fit()方法。用Glide時(shí)帅掘,如果圖片不需要自動(dòng)適配ImageView委煤,調(diào)用override(horizontalSize, verticalSize),它會(huì)在將圖片顯示在ImageView之前調(diào)整圖片的大小修档。

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);

這個(gè)設(shè)置可能也是有利于沒有明確目標(biāo)碧绞,但已知尺寸的視圖上。例如吱窝,如果app想要預(yù)先緩存在splash屏幕上讥邻,還沒法測(cè)量出ImageVIews具體寬高。但癣诱,如果你已經(jīng)知道圖片應(yīng)當(dāng)為多大计维,使用override可以提供一個(gè)指定的大小的圖片袜香。

縮放圖片

現(xiàn)在撕予,對(duì)于任何圖像的任何處理,調(diào)整圖像的大小可能會(huì)扭曲長(zhǎng)寬比蜈首,丑化圖片的顯示实抡。在大多數(shù)情況下,你希望防止這種事情發(fā)升欢策。Glide提供了變換去處理圖片顯示吆寨,通過設(shè)置centerCrop 和 fitCenter,可以得到兩個(gè)不同的效果踩寇。

CenterCrop

CenterCrop()會(huì)縮放圖片讓圖片充滿整個(gè)ImageView的邊框啄清,然后裁掉超出的部分。ImageVIew會(huì)被完全填充滿俺孙,但是圖片可能不能完全顯示出辣卒。

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()會(huì)縮放圖片讓兩邊都相等或小于ImageView的所需求的邊框。圖片會(huì)被完整顯示睛榄,可能不能完全填充整個(gè)ImageView荣茫。

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

我們會(huì)在隨后的文章中介紹除了centerCrop() 和 fitCenter()以外的自定義變換方法。

展望

這篇文章中场靴,你已經(jīng)學(xué)會(huì)了如何調(diào)整要顯示的圖片的尺寸啡莉。這對(duì)于創(chuàng)建出色應(yīng)用非常有幫助港准。在我們進(jìn)入更高級(jí)的Glide主題之前,我們后面將會(huì)學(xué)習(xí)一個(gè)Glide獨(dú)有的功能:播放Gif和視頻咧欣。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末浅缸,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子魄咕,更是在濱河造成了極大的恐慌疗杉,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,194評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蚕礼,死亡現(xiàn)場(chǎng)離奇詭異烟具,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)奠蹬,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門朝聋,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人囤躁,你說我怎么就攤上這事冀痕。” “怎么了狸演?”我有些...
    開封第一講書人閱讀 156,780評(píng)論 0 346
  • 文/不壞的土叔 我叫張陵言蛇,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我宵距,道長(zhǎng)腊尚,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,388評(píng)論 1 283
  • 正文 為了忘掉前任满哪,我火速辦了婚禮婿斥,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘哨鸭。我一直安慰自己民宿,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,430評(píng)論 5 384
  • 文/花漫 我一把揭開白布像鸡。 她就那樣靜靜地躺著活鹰,像睡著了一般。 火紅的嫁衣襯著肌膚如雪只估。 梳的紋絲不亂的頭發(fā)上志群,一...
    開封第一講書人閱讀 49,764評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音仅乓,去河邊找鬼赖舟。 笑死,一個(gè)胖子當(dāng)著我的面吹牛夸楣,可吹牛的內(nèi)容都是我干的宾抓。 我是一名探鬼主播子漩,決...
    沈念sama閱讀 38,907評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼石洗!你這毒婦竟也來(lái)了幢泼?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,679評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤讲衫,失蹤者是張志新(化名)和其女友劉穎缕棵,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體涉兽,經(jīng)...
    沈念sama閱讀 44,122評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡招驴,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,459評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了枷畏。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片别厘。...
    茶點(diǎn)故事閱讀 38,605評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖拥诡,靈堂內(nèi)的尸體忽然破棺而出触趴,到底是詐尸還是另有隱情,我是刑警寧澤渴肉,帶...
    沈念sama閱讀 34,270評(píng)論 4 329
  • 正文 年R本政府宣布冗懦,位于F島的核電站,受9級(jí)特大地震影響仇祭,放射性物質(zhì)發(fā)生泄漏披蕉。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,867評(píng)論 3 312
  • 文/蒙蒙 一前塔、第九天 我趴在偏房一處隱蔽的房頂上張望嚣艇。 院中可真熱鬧承冰,春花似錦华弓、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至娜搂,卻和暖如春迁霎,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背百宇。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評(píng)論 1 265
  • 我被黑心中介騙來(lái)泰國(guó)打工考廉, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人携御。 一個(gè)月前我還...
    沈念sama閱讀 46,297評(píng)論 2 360
  • 正文 我出身青樓昌粤,卻偏偏與公主長(zhǎng)得像既绕,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子涮坐,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,472評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容

  • 一凄贩、簡(jiǎn)介 在泰國(guó)舉行的谷歌開發(fā)者論壇上,谷歌為我們介紹了一個(gè)名叫Glide的圖片加載庫(kù)袱讹,作者是bumptech疲扎。這...
    天天大保建閱讀 7,459評(píng)論 2 28
  • 1、基本使用 添加Glide到你的設(shè)置中首先捷雕,添加Glide到你的工程依賴?yán)锝飞ィ刂贡疚膶懽鲿r(shí),最新的Glide版本...
    南城的人閱讀 757評(píng)論 0 2
  • 在Android設(shè)備上救巷,加載網(wǎng)絡(luò)圖片一直是一個(gè)頭疼的問題瓜挽,因?yàn)锳ndroid設(shè)備種類繁多(當(dāng)然最主要的是配置),處...
    Code4Android閱讀 17,670評(píng)論 5 96
  • 什么時(shí)候時(shí)間被戴在了手上征绸? 如同久橙, 奔騰的河流被迫停止了流淌。 我想管怠, 每一只手表淆衷, 不僅清算你的光陰, 還叩問著...
    閱簡(jiǎn)上書閱讀 291評(píng)論 0 2
  • 夜晚對(duì)于我們是一天剛剛開始 下午對(duì)于我們是剛剛醒來(lái) 日光足夠凜冽渤弛,你蒙騙我說這天氣糟糕適合起床 我不置可否祝拯,醒著睡...
    lingmenglian閱讀 217評(píng)論 0 1