我的目标是使特定的颜色在图像上透明,就像在游戏的平铺中一样,在加载时忽略一种普通的背景色。
我所读到的
我添加到默认值的代码。JAVA
ImageView log = (ImageView) findViewById(R.id.iconLogo);
int col = ResourcesCompat.getColor(getResources(), R.color.colorTrans, null);
log.getDrawable().mutate().setColorFilter(col, PorterDuff.Mode.SRC_IN);
//log.getDrawable().setColorFilter(col, PorterDuff.Mode.SRC_IN); //take2
//log.setColorFilter(R.color.colorTrans, PorterDuff.Mode.SRC_IN); //take3
使图像可变提供了更好的结果,但仍然没有从图像中减去R.color.colorTrans
。总体而言,在使用滤镜后,它似乎是作为整个图像上方的滤镜工作的,并且没有搜索我设置的颜色,因此颜色总是存在,并且不排除不取决于所使用的模式。
第二种选择
public static Bitmap getBitmapWithTransparentBG(Bitmap srcBitmap, int BgColor) {
Bitmap result = srcBitmap.copy(Bitmap.Config.ARGB_8888, true);
int nWidth = result.getWidth();
int nHeight = result.getHeight();
for (int y = 0; y < nHeight; ++y)
for (int x = 0; x < nWidth; ++x) {
int nPixelColor = result.getPixel(x, y);
if (nPixelColor == BgColor)
result.setPixel(x, y, Color.TRANSPARENT);
}
return result;
}
仅使用一个600x600 px png文件将应用程序加载时间从1-2秒增加到8-12秒,而且不会删除特定颜色。因此不能用于多个IGAME。
我再次需要的是在ImageView中删除/忽略图像中的特定颜色,但不要使所有图片透明。既然游戏使用没有alpha的平铺贴图,那么一定有一种方法可以在不添加alpha蒙版的情况下做到这一点。
此解决方案无法透明位图图像的像素。
然而,即使在一张图片上使用它也会大幅增加加载时间。可能是。png
背景已经清除,最好使用。
问题内容: 但是我需要一个Java等效项。我需要一个图像类型(如,,…),该图像类型可以完全透明(alpha = 0)保留此颜色。当然还有一种将其保存为文件的方法。 问题答案: import java.awt.; import java.awt.image. ; 修改代码以使每个像素透明 来源:http://www.rgagnon.com/javadetails/java-0265.html
我试图从眼动跟踪结果创建一个热图(显示用户在屏幕上最频繁查看的位置)。 对于用户经常查看的像素,我想设置不透明的红色,对于不太频繁的橙色,等等...我使用红色到绿色的色阶。但是对于频率最低的像素,我希望它们不仅显示绿色,而且是透明的。 问题是,当我尝试改变颜色时,例如使用它实际上并没有根据新旧颜色将像素作为平均值着色,它只是显示一些新的、看起来奇怪的颜色。 图像与alpha RGBA值设置为50:
问题内容: 我有一个DIV,我想放置一个图案作为背景。此图案是灰色的。为了使它更好一点,我想在上面放一个透明的颜色“层”。以下是我尝试过的方法,但是没有用。有没有办法将彩色图层放在背景图像上? 这是我的CSS: 问题答案: 这里是: 对此的HTML: 当然,如果其中没有其他元素,则需要为该类定义宽度和高度
嘿,我正在尝试做一个程序,它加载一个彩色图像作为灰度画布,然后返回颜色点击像素。当setrgb()方法没有做它应该做的事情时,我就被困在这里了。我已经通过getRGB()从原始图像中复制了颜色,并使用setRGB()将其分配给新图像。我试图输出两个像素颜色值,但他们不一样。请帮我解决这个问题。以下是到目前为止的代码:
现在我需要在它后面绘制,但我不能在它后面得到任何视图绘制。我知道如何使用属性来实现,但我不想使用此属性,因为它将忽略设置为透明的statusBar的颜色。
问题内容: 我有一个Android应用程序,可将图像加载为位图并将其显示在ImageView中。问题在于图像似乎具有透明背景;这会导致图像上的某些黑色文本在黑色背景下消失。 如果将ImageView背景设置为白色,则可以完成这种工作,但是在图像上会出现丑陋的大边框,将其拉伸以适合父对象(实际图像在中间缩放)。 所以-我想将位图中的透明像素转换为纯色-但我不知道该怎么做! 任何帮助将不胜感激!