[英]How can I read the EXIF data from an image taken with an Apple iPhone
如何從使用C#的Apple iPhone拍攝的圖像中讀取EXIF數據?
我需要GPS相關數據。
PS:除了使用Apple iPhone拍攝的圖像外,我知道如何閱讀EXIF
我建議你看一下關於Code Code的Google Code上的exiflibrary項目及其相關的ExifLibrary for .NET文章。
它支持150多種已知的EXIF標簽,包括32種GPS相關標簽。 獲得經度和經度就像:
var exif = ExifFile.Read(fileName);
Console.WriteLine(exif.Properties[ExifTag.GPSLatitude]);
Console.WriteLine(exif.Properties[ExifTag.GPSLongitude]);
它甚至還有一個簡潔的小型演示應用程序,它具有二進制數據的交互式可視化:
MetadataExtractor庫自2002年起可用於Java,現在完全支持.NET。 它支持JPEG文件中的Exif GPS數據,以及一系列其他元數據類型和文件類型。
以下是iPhone 4 , iPhone 5和iPhone 6的輸出示例。
它可以通過NuGet獲得:
PM> Install-Package MetadataExtractor
然后,要訪問GPS位置,請使用以下代碼:
var directories = ImageMetadataReader.ReadMetadata(jpegFilePath);
var gps = directories.OfType<GpsDirectory>().FirstOrDefault();
var location = gps?.GetGeoLocation();
if (location != null)
Console.WriteLine("Lat {0} Lng {1}", location.Latitude, location.Longitude);
或者打印出每個發現的值:
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);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.