[英]How can i download some image libraries to android?
我想做的是在android中读取一些图像并将图像中的每个像素转换为RGB值,这是我发现的代码:
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button test=(Button)findViewById(R.id.button1);
test.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
BufferedImage bi=ImageIO.read(new File("C:\\images\\Sunset.jpg"));
int[] pixel;
for (int y = 0; y < bi.getHeight(); y++) {
for (int x = 0; x < bi.getWidth(); x++) {
pixel = bi.getRaster().getPixel(x, y, new int[3]);
System.out.println(pixel[0] + " - " + pixel[1] + " - " + pixel[2] + " - " + (bi.getWidth() * y + x));
}
}
}
});
}
}
但是我在导入这样的一些软件包时遇到了问题:
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
而且我不知道如何下载它们,或者是解决此问题的最佳方法。
BufferedImage或ImageIO在android上不可用。
代替使用Bitmap的BufferedImage,来看看getPixels函数。
代替ImageIO使用BitmapFactory ,您需要的功能是encodeFile
BitmapFactory.Options opts = new BitmapFactory.Options();
opts.inPreferredConfig = Bitmap.Config.ARGB_8888;
Bitmap bitmap = BitmapFactory.decodeFile(filePath, opts);
int pixels[] = new int[bitmap.getWidth()*bitmap.getHeight()];
bitmap.getPixels(pixels,0,0,0,0,bitmap.getWidth(),bitmap.getHeight());
第一个从文件创建位图。
BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config.ARGB_8888;
Bitmap bitmap = BitmapFactory.decodeFile(photoPath, options);
接下来,您可以从位图获取getPixel()
for (int y = 0; y < bitmap.getHeight(); y++) {
for (int x = 0; x < bitmap.getWidth(); x++) {
android.util.Log.v("TAG", bitmap.getPixel(x,y));
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.