Open Source .NET API dla obrazów
Biblioteka .NET do odczytywania metadanych z obrazów
MetadataExtractor to prosty interfejs .NET API do wyodrębniania metadanych z obrazów. Korzystając z interfejsu API, można wyodrębnić szeroki zakres informacji o metadanych, w tym Exif, IPTC, XMP, JFIF/JFXX, profile ICC, właściwości WebP, właściwości Netpbm, właściwości PNG, właściwości BMP, właściwości GIF, właściwości ICO i właściwości PCX.
Interfejs API obsługuje różne formaty plików obrazów i obrazy w formacie camera raw, a także umożliwia uzyskiwanie danych makernote specyficznych dla aparatu dla wielu różnych producentów aparatów.
Pierwsze kroki z MetadataExtractor
Zalecanym sposobem instalacji MetadataExtractor jest użycie narzędzia NuGet. Użyj następującego polecenia, aby zainstalować MetadataExtractor.
Install-Package MetadataExtractor
Czytaj i zapisuj metadane obrazów przez .NET
MetadataExtractor API umożliwia twórcom oprogramowania dostęp i ładowanie obrazów w ich aplikacjach .NET. Interfejs API pomaga programistom zidentyfikować typ pliku, który przetwarzają automatycznie, począwszy od pierwszych bajtów pliku. Ogólnie rzecz biorąc, klasa ImageMetadataReader może służyć do odczytywania metadanych pliku obrazu. Dostępne są również bardziej szczegółowe czytniki, jeśli znasz typ pliku, z którego czytasz, taki jak JpegMetadataReader. Ale zawsze zaleca się używanie ImageMetadataReader, ponieważ jest to bezpieczniejsze.
Czytaj metadane obrazów przez C#.NET
Metadata metadata = ImageMetadataReader.readMetadata(file);
for (Directory directory : metadata.getDirectories()) {
for (Tag tag : directory.getTags()) {
System.out.format("[%s] - %s = %s",
directory.getName(), tag.getTagName(), tag.getDescription());
}
if (directory.hasErrors()) {
for (String error : directory.getErrors()) {
System.err.format("ERROR: %s", error);
}
}
}
Wyodrębnij metadane z obrazów za pomocą C#
MetadataExtractor pozwala na wyodrębnienie szerokiego zakresu informacji o metadanych z obrazów. Możesz wyodrębnić wszystkie informacje z obrazu, zapętlając katalogi, a następnie zapętlając każdy znacznik w nim. Katalog zawiera informacje o typie metadanych, a tag zawiera właściwości. Określone informacje można wyodrębnić z obrazów za pomocą metody directory.OfType().FirstOrDefault().
Zdekodowany opis określonego znacznika za pomocą C#
Metadata metadata = ImageMetadataReader.readMetadata(file);
for (Directory directory : metadata.getDirectories()) {
for (Tag tag : directory.getTags()) {
System.out.format("[%s] - %s = %s",
directory.getName(), tag.getTagName(), tag.getDescription());
}
if (directory.hasErrors()) {
for (String error : directory.getErrors()) {
System.err.format("ERROR: %s", error);
}
}
}
Wyodrębnij notatki twórcy dotyczące konkretnego aparatu za pomocą C#
Interfejs API przetwarzania obrazu Open Source MetadataExtractor umożliwia wyodrębnianie notatek producenta dla aparatów wyprodukowanych przez firmy Canon, Apple, Agfa, Casio, DJI, Epson, Fujifilm, Kodak, Kyocera, Leica, Minolta, Nikon, Olympus, Panasonic, Pentax, Reconyx, Sanyo, Sigma/Foveon i Sony.