求助关于位图的读写,不解的地方

            (bmp)位图的信息头里面有个biBitcount  这个就是每个像素的所占的位数,应该是1或4或8或24(真彩),但是我用程序读出的数据为什么是零呢,我自己用vc添加了一个位图,只在图的中间画一个矩形方框,图像在下面的图片中,但是我读取的数据文件打开后在数据区中间有两个矩形的1区,这是怎么回事?大哭

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Android 中,我们可以使用 Bitmap 类来读写位图。具体的操作步骤如下: 1. 从资源中读取位图 我们可以通过以下代码从资源中读取位图: ```java Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.my_image); ``` 2. 从文件中读取位图 我们可以通过以下代码从文件中读取位图: ```java Bitmap bitmap = BitmapFactory.decodeFile("/sdcard/my_image.jpg"); ``` 3. 从网络中读取位图 我们可以使用 Android 提供的网络请求库(如 Volley、OkHttp 等)从网络中读取位图: ```java ImageRequest imageRequest = new ImageRequest(url, new Response.Listener<Bitmap>() { @Override public void onResponse(Bitmap response) { // 处理位图 } }, 0, 0, null, null); ``` 4. 将位图保存到文件 我们可以使用以下代码将位图保存到文件: ```java File file = new File("/sdcard/my_image.jpg"); OutputStream os = new FileOutputStream(file); bitmap.compress(Bitmap.CompressFormat.JPEG, 100, os); os.flush(); os.close(); ``` 5. 从矢量绘图获取位图 我们可以使用以下代码从矢量绘图获取位图: ```java VectorDrawable vectorDrawable = (VectorDrawable) getResources().getDrawable(R.drawable.my_vector); Bitmap bitmap = Bitmap.createBitmap(vectorDrawable.getIntrinsicWidth(), vectorDrawable.getIntrinsicHeight(), Bitmap.Config.ARGB_8888); Canvas canvas = new Canvas(bitmap); vectorDrawable.setBounds(0, 0, canvas.getWidth(), canvas.getHeight()); vectorDrawable.draw(canvas); ``` 以上就是关于 Android 中读写位图的操作方法,希望对你有所帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值