【问题标题】:flutter canvas custom transparent颤动画布自定义透明
【发布时间】:2020-10-11 00:49:37
【问题描述】:

在将图像绘制到 Flutter 画布时,有没有办法选择要替换为透明的颜色?我有一个洋红色背景的精灵表,我希望它在绘制时是透明的。我是这样画的:

  void _draw(Canvas canvas, Offset offset, ui.Image image) {
    final paint = Paint();
    canvas.drawImage(image, offset, paint);
  }

【问题讨论】:

    标签: flutter dart


    【解决方案1】:

    你只需要设置一个带有 alpha 值的 ARGB 颜色

    paint.color = Color.fromARGB(alpha, r, g, b)
    

    其中 alpha 是介于 0 和 1 之间的双精度数,0 表示透明,1 表示最明显。 R,G,B 是应用的红蓝绿颜色的级别。

    白色是:

    r=255, g=255, b=255
    

    黑色是:

    r=0, g=0, b=0
    

    所以在你的情况下:

    paint.color = Color.fromARGB(0, 0, 0, 0)
    

    【讨论】:

    • 这会改变整个图像的不透明度。我想要实现的是,在像素为洋红色的情况下,将其绘制为透明。
    猜你喜欢
    • 2011-03-01
    • 2019-06-13
    • 2017-04-12
    • 2011-07-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-09
    • 2017-08-09
    相关资源
    最近更新 更多