Android Bitmap顯示映像的縮放問題

來源:互聯網
上載者:User

在使用Bitmap進行位元影像讀取和顯示的時候需要注意在產生位元影像時,系統會根據不同的情況來縮小、放大映像。

當把圖片放到drawable檔案夾中時,160密度的模擬器顯示的映像有放大效果,240密度的模擬器顯示原尺寸的映像。

當把圖片放到drawable-hdpi檔案夾中時,160密度的模擬器顯示出的映像有縮小效果,240密度的模擬器顯示原尺寸的映像。

當把圖片放到drawable-mdpi檔案夾中時,160密度的模擬器顯示原尺寸的映像,240密度的模擬器顯示放大的映像。

當把圖片放到drawable-ldpi檔案夾中時,160、240密度的模擬器都顯示放大的圖片。

由此可以看出,在使用Bitmap顯示映像時,一般應放在drawable-hdpi檔案夾中,這樣可以根據螢幕的密度來調整映像大小,比如再做遊戲時,大螢幕的與小螢幕的手機中,人物或物體應該有大小之分。

如果想無論什麼密度都顯示出原尺寸的映像,則需要有如下幾行代碼進行設定:

 

1
// Bitmap的配置參數
2
BitmapFactory.Options opts = new BitmapFactory.Options();
3
opts.inDensity = getResources().getDisplayMetrics().densityDpi;
4
opts.inTargetDensity = getResources().getDisplayMetrics().densityDpi;
5
 
6
// 以指定的參數建立Bitmap
7
Bitmap girl = BitmapFactory.decodeResource(getResources(), R.drawable.girl, opts);
 


摘自  wangzunren
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.