diff --git a/src/ImageSharp/MetaData/Profiles/Exif/ExifProfile.cs b/src/ImageSharp/MetaData/Profiles/Exif/ExifProfile.cs index b270caf5d..1217fc0a9 100644 --- a/src/ImageSharp/MetaData/Profiles/Exif/ExifProfile.cs +++ b/src/ImageSharp/MetaData/Profiles/Exif/ExifProfile.cs @@ -238,11 +238,18 @@ namespace ImageSharp private void SyncResolution(ExifTag tag, double resolution) { ExifValue value = this.GetValue(tag); - if (value != null) + if (value == null) { - Rational newResolution = new Rational(resolution, false); - this.SetValue(tag, newResolution); + return; } + + if (value.IsArray || value.DataType != ExifDataType.Rational) + { + this.RemoveValue(value.Tag); + } + + Rational newResolution = new Rational(resolution, false); + this.SetValue(tag, newResolution); } private void InitializeValues()