【问题标题】:How to draw a circle on a bitmap without filling it?如何在位图上画一个圆而不填充它?
【发布时间】:2016-06-15 15:21:20
【问题描述】:

我正在位图上画一个圆圈并将此位图设置为 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);

【问题讨论】:

    标签: java android canvas bitmap


    【解决方案1】:

    您需要告知油漆您不使用填充样式,而是使用描边样式。

    The default is FILL

    样式指定正在绘制的图元是填充、描边还是两者(使用相同的颜色)。 默认为 FILL。

    所以你的代码必须是:

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

    Here解释了不同风格的区别。

    中风 使用此样式绘制的几何图形和文本将被描边,尊重绘图上与描边相关的字段。

    填充 使用此样式绘制的几何图形和文本将被填充,忽略绘图中所有与笔划相关的设置。

    FILL_AND_STROKE 使用此样式绘制的几何图形和文本将同时填充和描边,尊重绘图上与描边相关的字段。

    【讨论】:

    • @Android_Learner 如果您发现某个答案有用,您可以点赞并最终用绿旗将其标记为正确答案
    【解决方案2】:

    你需要将Paint样式改为描边:

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

    【讨论】:

      【解决方案3】:

      在您的paint p 实例上使用setStyle(Paint.Style.STROKE) 方法。

      【讨论】:

        【解决方案4】:

        你快到了……你需要设置style of the Paint对象……

        通过调用方法

        p.setStyle(Paint.Style.STROKE);
        

        选项有:

        示例:

        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);
        

        【讨论】:

        • 不客气,别忘了投票/接受答案
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-07-17
        • 1970-01-01
        • 1970-01-01
        • 2020-03-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多