2011-04-04 67 views
1

我有一張圖片(資源),我想用於Android中的應用程序。但我只想繪製它的特定部分。我最初的想法是把它變成一個位圖,並指定哪些像素需要繪製和在哪裏。我試過canvas.drawBitmap(位圖,src,dst,null);但它似乎並不奏效。也許我沒有正確使用它。使用Canvas繪製位圖片段

只是想知道是否有可能,我可以用什麼來實現這個目標?

謝謝!

src = new Rect(20,40,20,40); 
dst = new Rect(20,40,20,40); 

canvas.drawBitmap(background, offset, 0, null); 
canvas.drawBitmap(bitmap, src, dst, null); 

我希望看到在SRC的座標指定的區域被抽入DST的座標指定的範圍,但我看不到任何東西,除背景外。

+0

你在正確的道路上,你能發佈你的代碼嗎? – bigstones 2011-04-04 18:46:24

回答

1

dst應該是您要在畫布中繪製圖像的位置,並且src應該是您要剪裁的Rect。

+0

謝謝!我懂了:)我的座標需要一些調整。 – NVtool 2011-04-04 19:58:43

0

您可能希望使用支持alpha通道的格式,或者爲alpha通道加載位圖以及灰度圖像,從兩者構建圖像並繪製該圖像。嘗試Java的Graphics2D對象。 Here是一篇應該讓你開始的文章。

+1

這是Android,而不是Java – 2011-04-04 19:42:21

+0

@Marcos:我認爲Android是建立在Java上的。 – MrGrigg 2011-04-04 19:44:55

+0

這是一個完全不同的API。這裏沒有Swing ow AWT。只是Android組件。 – 2011-04-04 19:48:01