2016-06-15 22 views
1

我在位圖上繪製一個圓並將此位圖設置爲ImageView。圓形繪製正確,但我不希望它是一個實心圓有沒有辦法讓填充區域透明? 我使用下面的代碼如何在未填充的情況下在位圖上繪製圓形?

Bitmap bmp = RasterImageConverter.convertToBitmap(_loadedImage, ConvertToImageOptions.NONE.getValue()); 
Canvas c = new Canvas(bmp); 
c = new Canvas(bmp); 
myimgview.draw(c); 
Paint p = new Paint(); 
p.setColor(Color.RED); 
float x=(float) circleX; 
float y=(float) circleY; 
float Tx=(float) textX; 
float Ty=(float)textY; 
// c.drawLine(x, y, xend, yend, p); 
c.drawCircle(300, 300, 200, p); 
c.drawText(myText, Tx, Ty, p); 
myimgview.setImageBitmap(bmp); 

回答

0

你需要畫圖風格改變行程:

Paint p = new Paint(); 
p.setStyle(Paint.Style.STROKE); 
+0

謝謝你,它的工作:) –

2

您需要通知油漆,您不使用填充樣式,而是使用筆觸樣式。

The default is FILL

樣式指定是否正在繪製的圖元被填充,撫摸或兩者(在相同的顏色)。 默認爲FILL。

所以,你的代碼必須是:

Paint p = new Paint(); 
p.setStyle(Paint.Style.STROKE); 

Here解釋不同風格之間的差異。

行程 幾何形狀和這種風格繪製的文本將被撫摸,尊重上油漆中風相關的領域。

FILL 使用此樣式繪製的幾何圖形和文字將被填充,忽略繪畫中所有與筆畫相關的設置。

FILL_AND_STROKE 幾何和文本這種風格繪製將被填充的和同時撫摸,尊重上油漆中風相關的領域。通過調用方法

p.setStyle(Paint.Style.STROKE); 

+0

謝謝你,它的工作:) –

+0

@Android_Learner如果你發現一個答案是你可以給予好評有用,並最終將其標記爲與綠色正確的答案國旗 –

+0

是的,我沒有...... –

0

你幾乎沒有......你需要設置style of the Paint對象...

的選項有:

enter image description here

例如:

Bitmap bmp = RasterImageConverter.convertToBitmap(_loadedImage, ConvertToImageOptions.NONE.getValue()); 
Canvas c = new Canvas(bmp); 
c = new Canvas(bmp); 
myimgview.draw(c); 
Paint p = new Paint(); 
p.setColor(Color.RED); 
p.setStyle(Paint.Style.STROKE); 
+0

感謝它的工作:) –

+0

不客氣,不要忘記投票/接受答案 –

+0

是的,我沒有...... :) –

相關問題