【问题标题】:Plupload rotating uploaded photos incorrectly but only on SafariPlupload 错误地旋转上传的照片,但仅在 Safari 上
【发布时间】:2015-03-11 21:49:48
【问题描述】:
我在 ASP.NET MVC Web 应用程序中使用 Plupload 作为我的文件上传器。
使用 Chrome 在 PC 上测试此 Web 应用程序,我上传的照片保持保存在硬盘驱动器上的照片文件的旋转。但是,当我通过电子邮件发送相同的照片并将它们保存在 MAC 上时,检查 MAC 上的照片旋转是否与 PC 上的照片旋转相同,当使用 Safari 和 Plupload 上传时,文件会随机旋转且不正确。
Safari 6 和 8 会出现此问题。
我不知道从哪里开始调试此问题,我正在寻找有关从哪里开始调试的建议。
【问题讨论】:
标签:
ios
asp.net-mvc
file-upload
safari
【解决方案1】:
我通过查看 jpeg 文件中的 EXIF 元数据解决了这个问题,这是在 C# 中读取的方法,我根据可能来自 iPhone、iPod Touch 和某些 Android 设备的几个方向旋转图像:
using (
System.Drawing.Image image = System.Drawing.Image.FromStream(new System.IO.MemoryStream(binaryImagedata))
)
{
//image.Width = EndSheetWidth;
PropertyItem[] properties = image.PropertyItems;
int Orientation = 0;
foreach (PropertyItem p in properties)
{
if (p.Id == 274)
{
Orientation = (int) p.Value[0];
if (Orientation == 6)
image.RotateFlip(RotateFlipType.Rotate90FlipNone);
if (Orientation == 8)
image.RotateFlip(RotateFlipType.Rotate270FlipNone);
break;
}
}
//...more code
}//end using