通过小米MIX2S手机拍摄的竖屏照片,保存到服务器后,用Image.FromFile取图片的高宽,得到的值是反的,即得到的高是图片本身的宽,得到的宽是图片本身的高。
大家有遇到过这种情况吗?是什么原因导致的?
用苹果手机拍摄的图的没问题,不管是横屏还是竖屏。
我不知道,不过我提供一个思路:
上面三个步骤可以得出到底是C#的问题还是图片的问题,如果是图片的问题就问问小米的技术客服吧。
还有就是是不是你们在存储的过程中出了什么错误,试试从手机里直接拷贝出来一张用代码读取下看看
是c#的问题,Windows查看,或通过ACDSee查看,图片尺寸都没问题。
@.net老吴: 问问小米和微软的技术人员吧
@.net老吴: 实在不行,就用其他语言处理一下
试问矩形 是怎么依据的?是基于陀螺传感器,还是就不根据传感器?比如相机没有陀螺传感器,不管你哪个方向它就一个策略,而现在的手机有不同的策略选择,这没有什么对与错。
在目前的应用场景中,APP上传图片时,后端服务器需要记录下图片高宽,APP展示图片的时候需要知道图片的高宽比例,对图片进行缩放处理(等比缩放,不变形),现在有这个高、宽取反了的情况,导致APP展示图片变形,把这两张图片下载到本地,用ACDSee看图片的尺寸,或直接鼠标放到图片上看尺寸显示的高宽都没问题,但通过c#取图片高宽的时候,目前发现小米手机的图片尺寸反了(竖屏反了,横屏没问题),苹果手机的怎么拍都没问题。
是在猜想,图片内部的数据存储格式问题,导致.Net的API读取错误,而其他图片处理软件没问题。
楼主,有解决办法吗?