gpt4 book ai didi

java - 位图设置像素/像素不起作用

转载 作者:行者123 更新时间:2023-12-01 21:53:21 24 4
gpt4 key购买 nike

    TextView loadingText = (TextView)findViewById(R.id.loadingText);
loadingText.setTextSize(36);
loadingText.setText("Morphing...");
Bitmap leftbm = ((BitmapDrawable)leftImage.getDrawable()).getBitmap();
Bitmap rightbm = ((BitmapDrawable)rightImage.getDrawable()).getBitmap();


Bitmap newbm = leftbm.copy(Bitmap.Config.ALPHA_8, true);
int[] pixels = new int[newbm.getHeight() * newbm.getWidth()];
newbm.getPixels(pixels, 0, newbm.getWidth(), 0, 0, newbm.getWidth(), newbm.getHeight());

if (!newbm.isMutable()) {
Log.d("mutable check", "" + newbm.isMutable());
return;
}

for (int i = 0; i < newbm.getWidth(); i++) {
for (int j = 0; j < newbm.getHeight(); j++) {
newbm.setHasAlpha(false);
newbm.setPixel(i, j, Color.rgb(0, 0, 255));
}
}

loadingText.clearComposingText();
((ImageView)findViewById(R.id.morphView)).setImageBitmap(newbm);

这是我的主要 Activity 中按钮单击方法的代码。它只输出黑色图像。我已经完成了使用 alpha 和不使用 alpha 的操作,或者使用设置像素或设置像素的操作。总是得到相同的结果。

编辑:我的问题是在使用复制方法(我用来获取图像的可变位图)时使用了错误的配置,您需要 ALPHA_8888 而不是 ALPHA_8。

最佳答案

这是你的格式。您将其设置为 ALPHA_8。此格式仅存储 Alpha,不存储颜色数据。用户改为 ARGB_8888 - 每个颜色 channel 8 位和 8 位 alpha。

关于java - 位图设置像素/像素不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34820951/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com