成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

在iPhone 4上為視網膜顯示屏優化網頁圖片

移動開發 iOS
說起iPhone 4帶來的革新,retina display絕對是最吸引眼球的一項.正是依賴這視網膜顯示屏,iPhone 4的分辨率達到了640×960 pixels;不過為了保持向下兼容性,它采用的仍然是320×480 points。本文將講述在iPhone 4上為視網膜顯示屏優化網頁圖片。

說起iPhone 4帶來的革新,retina display絕對是最吸引眼球的一項,以至于我現在看電腦的顯示屏時,都能看到滿屏幕的像素點了⋯

正是依賴這視網膜顯示屏,iPhone 4的分辨率達到了640×960 pixels;不過為了保持向下兼容性,它采用的仍然是320×480 points。

也就是說,在不進行縮放的情況下,顯示普通圖片時,它會用4個像素來顯示圖片中的1個像素;而在顯示retina圖片時,每個像素都對應圖片中的1個像素。

如此一來,老的應用無需修改就可以在iPhone 4上運行了——雖然顯示效果差了點,但是不會出現只有左上角那1/4的區域有內容的情況。

在用iOS SDK開發iOS應用時,只要將圖片名加上“@2x”后綴,就能讓支持retina display的設備自動顯示這個解析度更高的圖片。

但Safari等使用UIWebView的應用在展示圖片時,卻無法利用這個特性,因為這樣可能會造成大量沒必要的HTTP請求。

既然不能自動實現,那就只能手動來弄了。原理很簡單,準備2種圖片,當檢測到支持retina display時,就顯示大圖,然后把圖像的長寬各縮小一半即可。

在網頁中,pixel與point比值稱為device-pixel-ratio,普通設備都是1,iPhone 4是2,有些Android機型是1.5。

要檢測它,直接用CSS3 media query即可:

  1. <link rel="stylesheet" type="text/css" 
  2. href="/css/retina.css" media="only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2)"/> 

或者:

  1. @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-device-pixel-ratio: 2) {} 

這種方式的缺點是圖片必須設為背景圖片,或者同時列出2個img元素,但隱藏其中一個。詳細的代碼我就不列出來了.

更靈活的方法當然就是用JavaScript了。只要簡單地獲取window.devicePixelRatio即可,對老的瀏覽器而言它是undefined,將其當成1就行了。

以這個地球儀來舉例:

  1. <img src="https://s8.51cto.com/oss/202207/20/a83fd0833ad646c8d1d51276980f0df68a8e80.png" id="photo"/> 

它的長寬都是64像素,所以我應該獲取一個128像素的,然后縮小一半:

  1. if (window.devicePixelRatio == 2) { 
  2.     var photo = document.getElementById('photo'); 
  3.     photo.src = 'https://s4.51cto.com/oss/202207/20/b374538198f98e05c6c6234dafe26eee066eaf.png'
  4.     photophoto.width = photo.height = 64; // 這個圖片沒有指定寬高,因此其實修改其中一個就行了 

這種方法的缺點就是可能會浪費流量,因為在JavaScript執行之前,就已經在獲取低解析度的圖片了。

最終的效果如下:

雖然在電腦上完全看不出有什么區別,但用iPhone 4在手機頁面瀏覽或放大時可以很容易看出2者的差異。

責任編輯:佚名 來源: keakon的涂鴉館
相關推薦

2012-06-14 10:57:59

Chrome視網膜顯示屏

2018-09-26 16:17:49

2012-08-02 13:22:04

Chrome 21瀏覽器

2012-05-17 09:07:45

iPhone蘋果

2018-09-07 14:35:28

Macbook Air視網膜屏蘋果

2013-04-07 15:59:01

蘋果

2012-03-18 18:46:17

New iPad

2012-07-30 15:24:25

筆記本

2022-12-30 08:00:00

深度學習集成模型

2012-06-27 14:19:33

2012-06-20 09:38:52

蘋果iPhone

2023-11-21 14:01:29

AI人工智能

2012-07-30 09:36:13

智能電視蘋果Apple TV

2012-03-11 15:17:52

iPad

2012-10-25 15:20:39

蘋果 MacBook

2013-01-08 11:08:58

Firefox 18瀏覽器

2012-04-20 12:57:21

iOS

2022-08-12 19:07:58

電源管理子系統鴻蒙

2011-07-07 16:00:15

iPhone OpenCV
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品一区二区三区在线播放 | 日本黄色大片免费 | 国产成人99久久亚洲综合精品 | 欧美精品一区二区三区四区五区 | 亚洲欧美在线视频 | 亚洲v日韩v综合v精品v | 国产一区二区在线免费观看 | av在线播放一区二区 | 大香在线伊779 | 婷婷五月色综合香五月 | 日韩综合网 | 一级特黄网站 | 日本人做爰大片免费观看一老师 | 亚洲一区二区三区在线免费观看 | 成人美女免费网站视频 | 久久久久久久综合 | 日本视频在线播放 | 中文字幕精品一区 | 成年人黄色一级片 | 夜夜爽99久久国产综合精品女不卡 | 欧美午夜视频 | 国产精品久久久久久吹潮日韩动画 | 超碰免费在线观看 | 成年人视频在线免费观看 | 99精品国产一区二区三区 | 美女视频一区二区三区 | 亚洲成av人片在线观看无码 | h在线看| 久久久久久久电影 | 正在播放亚洲 | 国产精品视频一二三区 | 国产一区二区三区四区 | 亚洲性网| 中文字幕一区在线观看视频 | 欧美日韩一区二区在线观看 | 日韩一区二区三区视频 | 国产精品久久久久久久久久久免费看 | 国产精品一区二区视频 | 欧美日韩高清免费 | www国产成人免费观看视频,深夜成人网 | 日韩精品一区二区三区中文在线 |