Android从canvis中删除一个椭圆形的部分

兰迪斯特

基本上,我正在尝试绘制O形。有什么办法(除了与背景色匹配之外),以便可以绘制两个椭圆形,并具有这样的形状,以便画布的中心椭圆在整个活动背景之前都是透明的?

这是我到目前为止的内容:

protected void onDraw(Canvas canvas) {

    if(mainTimerAngle - 90 < 0){
        mainTimerAngle += 270;
    }

    canvas.drawArc(new RectF(0, 0, canvas.getWidth(), canvas.getHeight()),
                                          -90, mainTimerAngle-90,true, mainTimerPaint);

    canvas.drawOval(new RectF(barWidth, barWidth, canvas.getWidth() - barWidth,
                                      canvas.getHeight() - barWidth), backgroundPaint);

}
MH。

是的,您可以使用为内部椭圆设置模式Paint实例PorterDuff.Mode.Clear

CLEAR模式将基本上擦除其绘制的像素。因此,您将需要在专用Bitmap背景上进行绘制,而不是直接在的背景上进行绘制View如果不这样做,您会发现直接擦除背景会导致黑洞。

这里有一些有用资源的链接。他们将为您提供各种模式及其视觉效果的概述。

API演示中还有一些示例代码,您应该可以在Android SDK文件夹中找到这些示例代码。随时注意com.example.android.apis.graphics.Xfermodes或者,在此处找到该类的最新源代码

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何制作一个圆形的椭圆形按钮?

来自分类Dev

我想用箭头将一个椭圆形的css形状变成椭圆形

来自分类Dev

我想用箭头将一个椭圆形的css形状变成椭圆形

来自分类Dev

如何创建一个椭圆形的UIView?

来自分类Dev

Python从4点创建一个椭圆形

来自分类Dev

如何在css中制作一个椭圆形?

来自分类Dev

如何在Flutter中在屏幕顶部创建一个半椭圆形?

来自分类Dev

在Tkinter中删除椭圆形的轮廓?

来自分类Dev

在Tkinter中删除椭圆形的轮廓?

来自分类Dev

帆布弹跳球,显示一个椭圆形的黑色球

来自分类Dev

LWJGL Circle程序创建一个椭圆形的形状

来自分类Dev

帆布弹跳球,显示一个椭圆形的黑球

来自分类Dev

在OpenGL中创建椭圆形或椭圆形光源?

来自分类Dev

如何在android中的水平Linearlayout中显示两个椭圆形末端的Textview?

来自分类Dev

在Java中链接两个椭圆形

来自分类Dev

当我分配一个 backgroundImage 时,我不能让 CircleAvatar 变成一个椭圆形

来自分类Dev

Android圆圈背景变为椭圆形

来自分类Dev

Android圆圈背景变为椭圆形

来自分类Dev

CSS中的半椭圆形

来自分类Dev

在椭圆形周长中绘制对象

来自分类Dev

如何在WPF按钮中获取按钮边框和椭圆形的一半?

来自分类Dev

在Android中可以绘制椭圆形,但是不能绘制矩形

来自分类Dev

在Android中可以绘制椭圆形,但是不能绘制矩形

来自分类Dev

两个重叠的椭圆形-可见的文物

来自分类Dev

使用CSS创建一半垂直的椭圆形

来自分类Dev

Android:椭圆形看起来很糟

来自分类Dev

Android:如何创建椭圆形的可绘制资源?

来自分类Dev

矩形,椭圆形底部

来自分类Dev

CaptureElement为椭圆形

Related 相关文章

热门标签

归档