簡體   English   中英

在Android中用透明顏色填充畫布

[英]Fill a canvas with a transparent color in Android

早上好,

我有一個用#99aaaaaa顏色初始化的ImageView (它對應於153,170,170,170)。 之后,我用不同的顏色畫了一些線。 現在,我想用原始顏色( #99aaaaaa)填充畫布。

方法myCanvas.drawColor(OriginalColor)myCanvas.drawColor(OriginalColor)填充畫布,但是線條仍然可見

    myPaint.setColor(OriginalColor);
    myPaint.setStyle(Paint.Style.FILL);
    myCanvas.drawRect(0, 0, 170, 170, myPaint); // my ImageView is  170X170

也讓線條可見。

任何幫助,謝謝

由於畫布的原始顏色是半透明的,因此您可以在其上繪制一些東西並繪制另一層半透明的東西,那么其顯而易見的效果是您會看到通過頂層透明層的水平向下層嗎? 換句話說,如果您在膝蓋上放一個半透明的玻璃杯,仍然看不到膝蓋

在調用drawRec()之前,如下設置傳輸模式:

paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC));

之后重置畫家,以進行進一步繪制:

paint.setXfermode(null);
paint.setColor(0xFFFFFFFF);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM