国产gaysexchina男同gay,japanrcep老熟妇乱子伦视频,吃奶呻吟打开双腿做受动态图,成人色网站,国产av一区二区三区最新精品

4.5 拉伸過濾

2018-02-24 14:50 更新

拉伸過濾

????最后我們再來談?wù)?code>minificationFilter和magnificationFilter屬性。總得來講當我們視圖顯示一個圖片的時候都應(yīng)該正確地顯示這個圖片意即以正確的比例和正確的11像素顯示在屏幕上。原因如下

  • 能夠顯示最好的畫質(zhì)像素既沒有被壓縮也沒有被拉伸。
  • 能更好的使用內(nèi)存因為這就是所有你要存儲的東西。
  • 最好的性能表現(xiàn)CPU不需要為此額外的計算。

????不過有時候顯示一個非真實大小的圖片確實是我們需要的效果。比如說一個頭像或是圖片的縮略圖再比如說一個可以被拖拽和伸縮的大圖。這些情況下為同一圖片的不同大小存儲不同的圖片顯得又不切實際。

????當圖片需要顯示不同的大小的時候有一種叫做拉伸過濾的算法就起到作用了。它作用于原圖的像素上并根據(jù)需要生成新的像素顯示在屏幕上。

????事實上重繪圖片大小也沒有一個統(tǒng)一的通用算法。這取決于需要拉伸的內(nèi)容放大或是縮小的需求等這些因素。CALayer為此提供了三種拉伸過濾方法他們是

  • kCAFilterLinear
  • kCAFilterNearest
  • kCAFilterTrilinear

????minification縮小圖片和magnification放大圖片默認的過濾器都是kCAFilterLinear這個過濾器采用雙線性濾波算法它在大多數(shù)情況下都表現(xiàn)良好。雙線性濾波算法通過對多個像素取樣最終生成新的值得到一個平滑的表現(xiàn)不錯的拉伸。但是當放大倍數(shù)比較大的時候圖片就模糊不清了。

????kCAFilterTrilinearkCAFilterLinear非常相似大部分情況下二者都看不出來有什么差別。但是較雙線性濾波算法而言三線性濾波算法存儲了多個大小情況下的圖片也叫多重貼圖并三維取樣同時結(jié)合大圖和小圖的存儲進而得到最后的結(jié)果。

????這個方法的好處在于算法能夠從一系列已經(jīng)接近于最終大小的圖片中得到想要的結(jié)果也就是說不要對很多像素同步取樣。這不僅提高了性能也避免了小概率因舍入錯誤引起的取樣失靈的問題

圖4.15 對于沒有斜線的小圖來說最近過濾算法要好很多

????總的來說對于比較小的圖或者是差異特別明顯極少斜線的大圖最近過濾算法會保留這種差異明顯的特質(zhì)以呈現(xiàn)更好的結(jié)果。但是對于大多數(shù)的圖尤其是有很多斜線或是曲線輪廓的圖片來說最近過濾算法會導(dǎo)致更差的結(jié)果。換句話說線性過濾保留了形狀最近過濾則保留了像素的差異。

????讓我們來實驗一下。我們對第三章的時鐘項目改動一下用LCD風格的數(shù)字方式顯示。我們用簡單的像素字體一種用像素構(gòu)成字符的字體而非矢量圖形創(chuàng)造數(shù)字顯示方式用圖片存儲起來而且用第二章介紹過的拼合技術(shù)來顯示如圖4.16。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號