【问题标题】:Android Image Orientation Issue on Motorola Droid摩托罗拉 Droid 上的 Android 图像方向问题
【发布时间】:2010-04-05 22:05:43
【问题描述】:

我们的应用程序使用图库选择操作从设备中抓取图像以上传到新的博客文章。我们在 Moto Droid 上看到纵向拍摄的图像以横向发送回应用程序,因此图像是横向的。 AFAIK 这只发生在 Droid 上。

通过谷歌找到这个,但我们需要以正确的方向上传完整尺寸的图片,因此该解决方案对我们不起作用:

http://groups.google.com/group/android-developers/browse_frm/thread/1246475fd4c3fdb6?pli=1

重现此问题的一种简单方法是在 Droid 上拍摄一张纵向照片,然后通过 Gmail 将其发送给自己。在电子邮件消息中,图像将是横向的(横向)。我已经在 droid 2.1 更新上进行了测试,但问题仍然存在。

这里有更多信息:

我在 Photoshop 中查看了图像信息,它有这样一行:

<tiff:Orientation>1</tiff:Orientation>

这个规范 (http://www.awaresystems.be/imaging/tiff/tifftags/orientation.html) 说 1 的值是:

1 = 第 0 行代表视觉 图像的顶部和第 0 列 表示视觉左侧。

在这种情况下,是不是不正确?在我的例子中,图像的顶部是右侧,第 0 行是左侧,我认为 tiff 方向的值应该是“5”。

【问题讨论】:

标签: android image orientation motorola


【解决方案1】:

我认为这可能是您的服务器代码中带有 EXIF 标记的错误。正如您所提到的,在我的 2.1 版 Droid 上,我以纵向模式拍摄了一张照片,并调查了保存的结果(例如,通过电子邮件发送给我自己)。在预览中打开文件时(在 Mac 上),它看起来是正确的。

使用方便的exif 工具(Mac 上为port install exif),我能够打印 EXIF 信息:

$ exif -t Orientation image.jpg 
EXIF entry 'Orientation' (0x112, 'Orientation') exists in IFD '0':
Tag: 0x112 ('Orientation')
  Format: 3 ('Short')
  Components: 1
  Size: 2
  Value: right - top

现在,如果您要删除 EXIF 信息,这可能是您的服务器/客户端通信中发生的情况:

$ exif --ifd=0 --tag=Orientation --set-value= -o image2.jpg image.jpg 
Wrote file 'image2.jpg'.

$ exif -t Orientation image2.jpg 
EXIF entry 'Orientation' (0x112, 'Orientation') exists in IFD '0':
Tag: 0x112 ('Orientation')
  Format: 3 ('Short')
  Components: 1
  Size: 2
  Value: 

生成的图像将处于横向模式。

所以,底线是 我认为 Droid 总是在横向存储图像中的位,并依靠 EXIF 元数据来存储旋转信息(这是完全有效的),您的应用程序可能会丢弃这些信息

希望对您有所帮助!随意评论或编辑原始问题以进一步解决问题。

【讨论】:

  • 我也刚刚查看了横向拍摄的图像的文件信息,它具有相同的方向值“1”。我认为这就是问题所在!
  • 我也看到了同样的情况。我有基于 EXIF 方向标志自动旋转图像的服务器端代码,问题是位图在从相机应用程序保存它到将其上传到服务器之间丢失了所有 EXIF 数据。该过程的一部分涉及使用 BitmapFactory 对图像进行下采样,因为我不需要完整的图像。只需要了解如何保存该 EXIF 数据。如果我发现了什么会回帖。
  • 我的应用用户刚刚报告了与 droid x 相同的问题。我发现了这个线程droidforums.net/forum/tech-issues-bug-reports-suggestions/… - 看起来像是机器人相机应用程序中的一个错误。这个话题也很有趣mail-archive.com/android-developers@googlegroups.com/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-03
相关资源
最近更新 更多