【问题标题】:Is there a way to crop a large image on android without loading into memory?有没有办法在不加载到内存的情况下在 android 上裁剪大图像?
【发布时间】:2012-07-13 19:24:06
【问题描述】:

我不想在屏幕上显示位图。只是试图从 sdcard 的原始图像中创建一个最大正方形图像,然后上传到服务器。有没有办法在不将图像加载到内存的情况下裁剪图像?还是分块加载图像然后保存到文件?

【问题讨论】:

  • 让我直截了当地说,您想将图像切割成“图块”并将每个图块发送到服务器吗?
  • 不,我只想从原始图像中裁剪出一张图像。假设原始图像是 200 x 300。裁剪后的图像应该是 200 x200。如果原始图像已经是正方形,则不需要裁剪
  • 您希望用户选择要裁剪的内容还是直接裁剪?
  • 我认为 Litus 已经回答了,还是谢谢 :)

标签: android image memory sd-card crop


【解决方案1】:

我不知道我是否理解这个问题,但这可能会有所帮助:

http://developer.android.com/reference/android/graphics/BitmapRegionDecoder.html

BitmapRegionDecoder 可用于从图像中解码矩形区域。当原始图像很大并且您只需要图像的一部分时,BitmapRegionDecoder 特别有用。

希望能帮到你:)

【讨论】:

  • 谢谢,它可以解决问题,但只有 2.3.3 及更高版本。我想我需要从 git 下载 BitmapRegionDecoder 代码并在应用程序中使用以支持 10 级以下
  • 如果你成功了,我希望你分享。这个属性很有用
  • 它使用原生 API。怀疑它是否可以轻松移植。
  • 是的,至少我试过了。我不太擅长原生的东西所以放弃了
猜你喜欢
  • 1970-01-01
  • 2014-07-25
  • 2021-12-11
  • 1970-01-01
  • 1970-01-01
  • 2018-10-16
  • 1970-01-01
  • 2017-10-20
  • 1970-01-01
相关资源
最近更新 更多