我对Android很陌生,正在做我自己的迷你项目,我想改变一个特定像素的颜色。在寻找如何做到这一点时,我在几年前遇到了这个问题。我尝试了myBitmap。setPixel(10,10,Color.rgb(45,127,0)) ,但当我在手机上激活它时,我激活这行代码的那一刻它就崩溃了。每当我与位图交互时,它似乎就会崩溃<代码>int x=myBitmap。getHeight() 这一行也会使应用程序崩溃。
然而,位图的初始创建不会引起任何问题:
background = (ImageView) findViewById(R.id.dangeon);
background.setDrawingCacheEnabled(true);
background.buildDrawingCache(true);
dang = background.getDrawingCache();
我必须安装任何软件包或激活任何东西才能使用setPixel或getHeight功能吗?或者,有没有其他方法来更改特定像素?
尝试@jayanth建议时的logcat错误:
2021 10月9日20:23:18.276 24894-24894/Aviv。Aviv E/AndroidRuntime:致命异常:主进程:Aviv。Aviv,PID:24894 java。lang.NullPointerException:尝试调用虚拟方法“android”。图样位图android。图样位图。在Aviv的空对象引用上复制(android.graphics.Bitmap$Config,boolean)”。阿维夫。主要活动。android上的onClick(MainActivity.java:247)。看法看法android上的performClick(View.java:7339)。看法看法android上的performClickInternal(View.java:7305)。看法看法在Android平台上获得3200美元(View.java:846)。看法查看$PerformClick。在android上运行(View.java:27787)。操作系统。处理程序。android上的handleCallback(Handler.java:873)。操作系统。处理程序。android上的dispatchMessage(Handler.java:99)。操作系统。活套。android上的loop(Looper.java:214)。应用程序。活动线程。java上的main(ActivityThread.java:7089)。郎。反思。方法在com上调用(本机方法)。Android内部的操作系统。RuntimeInit$MethodandArgscaler。在com上运行(RuntimeInit.java:494)。Android内部的操作系统。合子岩。main(Zyhtml" target="_blank">goteInit.java:965)
如果您正在不可变位图上尝试方法。它将抛出一个非法状态异常。
首先,创建位图的可变副本。然后你可以改变位图中像素的颜色。
Bitmap mutableBitmap = bitmap.copy(Bitmap.Config.ARGB_8888, true);
int red = 255; //replace it with your color
int green = 255; //replace it with your color
int blue = 255; //replace it with your color
int color = Color.argb(0xFF, red, green, blue);
mutableBitmap.setPixel(indexI, indexJ, color);
//now if you apply it to any image view to see change.
imageView.setImageBitmap(mutableBitmap);
对于给定的多色PNG(带透明度),最好的/快速的惯用方式是什么: 创建一个重复的 关于SO有几个相关的问题,但是我还没有找到有效的方法。
问题内容: 我想用Python更改单一颜色。 如果存在使用PIL的快速解决方案,我会更喜欢此解决方案。 此刻,我用 问题答案: 如果计算机上可用,请尝试执行以下操作: 它将使用多一点(3倍)的内存,但它应该快得多(〜5倍,但对于更大的图像,更多)。 另请注意,如果您只有RGB(而不是RGBA)图像,则上面的代码比需要的代码稍微复杂一些。但是,此示例将单独保留Alpha波段,而没有一个更简单的版本。
我从服务器接收图像,然后根据用户选择的颜色,图像颜色将发生变化。 我尝试了以下方法: 我得到了与我的目标相反的结果(UIImage外部的白色是用所选颜色着色的)。 出了什么问题? 在这个问题上我也需要这样做,提供的解决方案不能解决我的问题。如何更改iOS和WatchKit中的图像颜色
问题内容: 我想从我的Fluke机器人那里得到一张图像,并确定图像中每个像素的颜色。然后,如果像素大部分为红色,请将其更改为完全绿色。如果像素大部分是绿色,请将其更改为完全蓝色。如果像素大部分是蓝色,请将其更改为完全红色。这是我能够做的,但是我无法使它工作以获取必须更改的图像。没有语法错误,这只是语义上的麻烦。我正在使用python。 我尝试的代码: 我也保存了如下图片: 问题答案: 我假设您正在
问题内容: 我需要在python中更改图像的像素颜色。除了像素值(255,0,0)红色外,我需要将每个像素颜色值更改为黑色(0,0,0)。我尝试了以下代码,但没有帮助。 问题答案: 参见此Wikibook:https : //zh.wikibooks.org/wiki/Python_Imaging_Library/Editing_Pixels 修改该代码以适合您的问题:
本文向大家介绍iOS 更改图像的颜色,包括了iOS 更改图像的颜色的使用技巧和注意事项,需要的朋友参考一下 示例