У меня есть изображение в формате JPEG, которое было снято на iphone. На моем настольном ПК (Windows Photo Viewer, Google Chrome и т.д.) Ориентация неверна.
Я работаю над веб-приложением ASP.NET MVC 3, где мне нужно загружать фотографии (в настоящее время используется plupload).
У меня есть серверный код для обработки изображений, включая чтение данных EXIF.
Я пробовал читать поле PropertyTagOrientation
в метаданных EXIF (используя GDI - Image.PropertyItems
), но это поле отсутствует.
Таким образом, это либо некоторые конкретные метаданные iphone, либо некоторые другие метаданные.
Я использовал другой инструмент, такой как Aurigma Photo Uploader, и он правильно считывает метаданные и поворачивает изображение. Как это делается?
Кто-нибудь знает, какие другие метаданные JPEG могут содержать информацию, необходимую для того, чтобы знать, что ее нужно вращать, которая используется Aurigma?
Здесь код, который я использую для чтения данных EXIF:
var image = Image.FromStream(fileStream);
foreach (var prop in image.PropertyItems)
{
if (prop.Id == 112 || prop.Id == 5029)
{
// do my rotate code - e.g "RotateFlip"
// Never get in here - can't find these properties.
}
}
Любые идеи?