2012-03-07 83 views
2
Bitmap icon = BitmapFactory.decodeResource(this.getResources(),R.raw.book11); 
Canvas c = new Canvas(icon); 

使用此代碼行進行畫布實際上會從位圖(100x118)增加畫布大小(150x177)。如果我使用預定義的畫布大小,位圖會被裁剪。請幫助。 謝謝。畫布大小增加位圖大小android

+0

嗨crack_addict,是實際的代碼?當我在Android 2.3.7上運行該代碼時,我得到「java.lang.IllegalStateException:傳遞給Canvas構造函數的不可變位圖」。我猜你運行的實際代碼看起來有些不同?我很樂意幫助你,但我需要準確描述問題,以便能夠提供準確的答案。也許你可以發佈一個更完整的代碼示例? – 2012-03-07 09:39:00

回答

1

我解決我的這個公式:

event.getX()*3/2; 
event.getY()*3/2; 
0

系統會自動向上擴展您的圖像資源,當你使用它的一個'大/高者的屏幕分辨率/密度,如果該特定資產失蹤該特定配置(即,您正在hdpi設備上引用圖像,而該圖像不存在於drawable-hdpi中,但僅在原始可繪製目錄中)。

請注意,縮放因子取決於設備的屏幕密度。在你的情況下,似乎是1.5。

編輯:如果還沒有做,請檢查link