Plupload 错误地旋转上传的照片,但仅限于 Safari
Plupload rotating uploaded photos incorrectly but only on Safari
我在 ASP.NET MVC 网络应用程序中使用 Plupload 作为我的文件上传器。
使用 Chrome 在 PC 上测试此 Web 应用程序,我上传的照片保持了保存在硬盘驱动器上的照片文件的旋转。但是当我通过电子邮件发送相同的照片并将它们保存在 MAC 上时,检查照片旋转在 MAC 上是否与在 PC 上一样,上传时,使用 Safari,使用 Plupload,文件随机旋转且不正确。
此问题出现在 Safari 6 和 8 上。
我不知道从哪里开始调试这个问题,我正在寻找关于从哪里开始调试的建议。
我通过查看 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
我在 ASP.NET MVC 网络应用程序中使用 Plupload 作为我的文件上传器。
使用 Chrome 在 PC 上测试此 Web 应用程序,我上传的照片保持了保存在硬盘驱动器上的照片文件的旋转。但是当我通过电子邮件发送相同的照片并将它们保存在 MAC 上时,检查照片旋转在 MAC 上是否与在 PC 上一样,上传时,使用 Safari,使用 Plupload,文件随机旋转且不正确。
此问题出现在 Safari 6 和 8 上。
我不知道从哪里开始调试这个问题,我正在寻找关于从哪里开始调试的建议。
我通过查看 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