ios 的微信的 orientation 问题,已找到解决方案

2015-09-06 12:59:33 +08:00
 Ricoo

这两天在 ios 上微信开发,涉及到图片获取以及预览,其中遇到的坑真是无数个,其中最大的就是 ios 拍照的图片方向问题。

在 ios 上是以横拍为正方向,竖拍的话,你会发现图片的宽度是大于高度的,当你把通过微信接口获得的图片的 localId 赋值给 img 的 src 时,就会出现我们看到的方向和实际的方向不一样,当然通过调用微信上的拍照接口或者用拍照软件拍照,或者对图片进行美化处理后不会出现上述情况。

但是如果要选择以前拍的竖拍的照片,就会出现这个问题,我找了好久,好多种办法,例如画到 canvas 再旋转(跨域问题,不能实现),例如上传到后台处理(时间太久)。

今天终于发现一种简单方法可以解决了,就是调用微信图片接口的时候
wx.chooseImage ({

count: 1, // 默认 9

        sizeType: ['compressed'],
});

sizeType 设为 compressed ,这样微信会去生成压缩图,压缩图就不会有问题了。

这个问题困扰我好久好久,找了好多方法都没解决,现在找到这个比较简单的方法,也希望分享给其他有类似需求的开发者,大家不要再找的那么悲剧。

关于 orientation ,可以搜索“ ios orientation ”了解更多。

2756 次点击
所在节点    微信
1 条回复
iyaozhen
2015-09-06 13:23:35 +08:00
iOS 微信图片上传接口确实比较好用。 Android 上 bug 比较多(不能选择 sd 卡的照片,上传容易失败等)。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/218566

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX