从一些移动设备拍摄的肖像图片,通过超文本标记语言表单上传,在嵌入网页时获得错误的方向。
这是由于元数据,例如,它可以具有值6 = Rotate 90 CW
,该值告诉图像将以特定的方向显示。但是,图像本身-没有元数据-被横向存储为水平图像。根据图像渲染器的不同,您可以正确地看到图像(如下面的左侧缩略图所示),也可以不应用旋转元数据(如右侧缩略图所示)。对于嵌入在网站中的图像,它是后者。
有没有办法在解析云代码托管的web应用程序中使用Javascript或Node.js手动旋转上传的图片?(只解析云代码supports a few dependencies -但你仍然可以自己上传小脚本)。
发布于 2015-06-29 00:52:18
我最终编写了一个客户端类,用于旋转和调整上传的图像的大小。我正在使用Canvas元素和HTML5 FileReader。
源码和部分示例请参考https://github.com/ajgarn/CanvasImageUploader。
该类为您提供了图像数据( Blob),可以像通过FileReader上传文件一样将其发布到Parse's REST API。
发布于 2015-04-22 01:35:57
您应该能够在云代码中使用npm模块:Using npm modules in cloud code
一旦你得到了工作,jpegorientation npm模块应该能满足你的需求:
var jpeg = require('jpegorientation');
jpeg.autoRotate('image.jpg', function (err) {
// error handler
});
如果你不能让npm模块工作,你总是可以手动的包含这个库。如果您遇到库和node-gyp问题,还有其他模块需要考虑:
)的exif或exif-component相结合
https://stackoverflow.com/questions/29778259
复制相似问题