How can I read the EXIF data from an image taken with an Apple iPhone

后端 未结 3 1333
無奈伤痛
無奈伤痛 2021-01-06 01:07

How can I read the EXIF data from an image taken with an Apple iPhone using C#?

I need the GPS related data.

PS: I know how to read EXIF exc

3条回答
  •  滥情空心
    2021-01-06 01:47

    The MetadataExtractor library has been available for Java since 2002 and is now fully supported for .NET. It supports Exif GPS data from JPEG files, along with a tonne of other metadata types and file types.

    Here are examples of the output from an iPhone 4, iPhone 5 and an iPhone 6.

    It's available via NuGet:

    PM> Install-Package MetadataExtractor
    

    Then, to access the GPS location, use the following code:

    var directories = ImageMetadataReader.ReadMetadata(jpegFilePath);
    
    var gps = directories.OfType().FirstOrDefault();
    
    var location = gps?.GetGeoLocation();
    
    if (location != null)
        Console.WriteLine("Lat {0} Lng {1}", location.Latitude, location.Longitude);
    

    Or to print out every single discovered value:

    var lines = from directory in directories
                from tag in directory.Tags
                select $"{directory.Name}: {tag.TagName} = {tag.Description}";
    
    foreach (var line in lines)
        Console.WriteLine(line);
    

提交回复
热议问题