0

我正在创建一个允许用户拍照的移动 Web 应用程序(仅限 HTML5/JavaScript/CSS)。然后将相机中的图片加载到canvasHTML 元素。用户在拍照时可能会旋转他们的手机,所以最终我想适当地旋转输出。有没有办法在网页中仅确定用户在拍照时旋转了多少度?我不是在简单地谈论它们是否处于横向模式。我的意思是,如果您以纵向模式将手机正面朝下放在办公桌上(现在与您的办公桌平行),然后将其旋转为横向。这不会触发方向更改,但如果有意义的话,您现在可以将手机保持在“横向”位置。这将是用户拍摄照片的常用方式。我希望在上传图像时能够适当地旋转图像。

谢谢

4

1 回答 1

1

有没有办法在网页中仅确定用户在拍照时旋转了多少度?

就在这里!拍摄照片时,它们包含元数据 - 有关图像的信息。这称为EXIF数据。

它会告诉您诸如相机的品牌、闪光灯是否熄灭以及(对您有用)相机的方向等信息。

如果您使用 JavaScript 将图像绘制到画布上,我可以推荐BlueImp 的 JavaScript Load Image Library

加载图像后,您将能够进行如下调用:

var orientation = data.exif.get('Orientation');

这将告诉您拍摄照片时相机的握持方式。根据手机的不同,您可能还会获得旋转数据、GPS 数据、指南针航向等。

于 2019-01-21T15:55:52.207 回答