From 0e839909835726691e592c62015edde083dc9a37 Mon Sep 17 00:00:00 2001 From: Michael Oborne Date: Mon, 26 Jun 2023 15:32:36 +1000 Subject: [PATCH] GridUI: fix exif data parser --- Grid/GridUI.cs | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/Grid/GridUI.cs b/Grid/GridUI.cs index a860141eae..2711d8f0da 100644 --- a/Grid/GridUI.cs +++ b/Grid/GridUI.cs @@ -20,6 +20,7 @@ using System.Text; using System.Windows.Forms; using System.Xml; +using com.drew.metadata.jpeg; using GeoAPI.CoordinateSystems; using GeoAPI.CoordinateSystems.Transformations; using MissionPlanner.Controls; @@ -1502,16 +1503,26 @@ private void BUT_samplephoto_Click(object sender, EventArgs e) Console.WriteLine(lcDirectory.GetName() + " - " + tag.GetTagName() + " " + tag.GetTagValue().ToString()); } - if (lcDirectory.ContainsTag(ExifDirectory.TAG_EXIF_IMAGE_HEIGHT)) + if (lcDirectory is ExifDirectory && lcDirectory.ContainsTag(ExifDirectory.TAG_EXIF_IMAGE_HEIGHT)) { TXT_imgheight.Text = lcDirectory.GetInt(ExifDirectory.TAG_EXIF_IMAGE_HEIGHT).ToString(); } - if (lcDirectory.ContainsTag(ExifDirectory.TAG_EXIF_IMAGE_WIDTH)) + if (lcDirectory is ExifDirectory && lcDirectory.ContainsTag(ExifDirectory.TAG_EXIF_IMAGE_WIDTH)) { TXT_imgwidth.Text = lcDirectory.GetInt(ExifDirectory.TAG_EXIF_IMAGE_WIDTH).ToString(); } + if (lcDirectory is JpegDirectory && lcDirectory.ContainsTag(JpegDirectory.TAG_JPEG_IMAGE_HEIGHT)) + { + TXT_imgheight.Text = lcDirectory.GetInt(JpegDirectory.TAG_JPEG_IMAGE_HEIGHT).ToString(); + } + + if (lcDirectory is JpegDirectory && lcDirectory.ContainsTag(JpegDirectory.TAG_JPEG_IMAGE_WIDTH)) + { + TXT_imgwidth.Text = lcDirectory.GetInt(JpegDirectory.TAG_JPEG_IMAGE_WIDTH).ToString(); + } + if (lcDirectory.ContainsTag(ExifDirectory.TAG_FOCAL_PLANE_X_RES)) { var unit = lcDirectory.GetFloat(ExifDirectory.TAG_FOCAL_PLANE_UNIT);