【问题标题】:How to save image file in BMP format?如何将图像文件保存为 BMP 格式?
【发布时间】:2012-04-16 07:32:11
【问题描述】:

以下代码压缩我的图像,否则它不是 BMP 文件:

FileOutputStream fos = new FileOutputStream(imagefile);

bitmap.compress(Bitmap.CompressFormat.PNG, 100, fos);
fos.flush();
fos.close();

如何将我的图像保存为 BMP 格式?

【问题讨论】:

  • 您应该告诉我们您认为需要 BMP 格式文件的原因。这是一种旧的、沉重的、严重的 Windows 类型格式。你想做什么?
  • 我很好奇,为什么你认为你需要一个 BMP 文件? PNG 几乎在所有方面都优于。
  • @Yahel :-??????奇怪的问题。认为有人需要与另一个系统兼容。
  • @Meehman : 这个问题并不奇怪 :) 每当有人要求一些不存在的东西时,尽管 Android 平台被成千上万的开发人员使用,你必须问自己问题是否存在并不是说该功能不存在,而是为什么当成千上万的其他开发人员不存在时您认为您需要它:) 您“认为”它是针对需要它的人,向他们提出我问过您的相同问题,您可能会感到惊讶他们不需要它的事实。他们只是不知道 :D 他们可能需要它,但我敢打赌他们不知道 :)

标签: android image bitmap save bmp


【解决方案1】:

嘿,只需将名称命名为 .bmp

这样做:

ByteArrayOutputStream bytes = new ByteArrayOutputStream();
_bitmapScaled.compress(Bitmap.CompressFormat.PNG, 40, bytes);

//you can create a new file name "test.BMP" in sdcard folder.
File f = new File(Environment.getExternalStorageDirectory()
                        + File.separator + "**test.bmp**")

听起来我只是在胡闹,但是一旦它以 bmp 格式保存就试试吧..干杯

【讨论】:

  • 更改文件扩展名实际上并不能使其成为位图图像。它只是使它成为一个带有 .bmp 文件扩展名的 png。
【解决方案2】:

根据this 参考,没有用于 BMP 的内置编码器。 BMP 不是一种过于复杂的格式,编写/查找 Java 实现可能不是火箭科学。

【讨论】:

  • 这取决于您 - 这取决于 BMP 对您的重要性。您可以在 Android 之外进行转换,例如在它保存到的服务器上。这并非不可能,只是不是为了方便使用而内置在 API 中的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-16
  • 2020-02-10
  • 1970-01-01
  • 1970-01-01
  • 2021-10-06
相关资源
最近更新 更多