Android - 用颜色填充位图

标签 android bitmap fill

我正在使用 Android,我真的需要一种快速的方法来获取预定大小的位图以用预定颜色填充。

但是下面的代码对我不起作用;

位图输入是可变位图

    int old = input.getPixel(0, 0);
    Canvas c = new Canvas(input);
    Rect rect = c.getClipBounds(); // The dimensions of the bitmap are returned
    c.drawARGB(a, r, g, b);
    int n = input.getPixel(0, 0);
    if(old==n)
        Log.e(TAG, "Values didn't change!");
    return input;

请放心,“旧”值和 (a|r|g|b) 的值是不同的,但是使用 Canvas “绘制”颜色并在下方放置我的可变位图,位图保留其旧值。

我对接受位图和颜色值并返回填充该颜色的位图的任何方法都很满意。

最佳答案

我没有提供足够的信息!

我的 alpha 值超出范围;

int a = 0xFF<<24

所以当我调用

c.drawARGB(a,r,g,b);

它安静地失败并且没有改变值。

关于Android - 用颜色填充位图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/923408/

相关文章:

Python:前向填充 nans 和 zeros

java - HttpPost到asp服务器上(HTML形式)

java - Android位图像素操作返回黑色方 block

android - osmdroid 不居中/注册 GeoPoint 坐标

android - 如何获取使用 Volley ImageLoader 下载的缓存位图?

android - 如何从可绘制文件夹中的图像获取路径并设置为 ImageView 、位图?

javascript - HTML5 Canvas - 如何 fill() 一个特定的上下文

javafx - 如何阻止透明填充圆圈在其中获取鼠标事件?

android - 从未调用过广播接收器 onReceive() - Android

Android - TTS 没有声音出来