上传旋转上传的照片不正确,但仅在 Safari 上



我正在使用 Plupload 作为我在 ASP.NET MVC Web 应用程序中的文件上传器。

使用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

最新更新