Какая лучшая библиотека EXIF ​​для .Net?

Я ищу простое и понятное решение для доступа к информации EXIF ​​изображений jpeg в .Net. У кого-нибудь есть опыт в этом?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
27
0
27 179
7

Ответы 7

Мне нравится Фотография DotImage от Atalasoft, но это решение с закрытым исходным кодом и стоит около 600 за лицензию разработчика.

Вы также можете проверить DTools в Codeplex, фреймворк с открытым исходным кодом, разработанный для дополнения стандартного Fx. Он включает некоторые классы, связанные с Exif.

тот, который я сохранил в feeddemon, чтобы я мог узнать больше, когда у меня будет время (когда это для программиста? LOL), находится ниже

Коллекция тегов Exif - библиотека извлечения метаданных EXIF

Майк

Обратите внимание на этот экстрактор метаданных. Он написан на Java, но также был перенесен на C#. Я использовал версию Java, чтобы написать небольшую утилиту для переименования моих файлов jpeg на основе тегов даты и модели. Очень проста в использовании.

Ура, Дэйв. У меня сейчас портировал эту библиотеку в .NET.

Drew Noakes 10.07.2015 01:50

Несколько лет назад я вместе с Омаром Шахином запустил небольшое приложение JPEG EXIF ​​для работы с файлами JPEG EXIF ​​под названием JpegHammer.

Он извлек из этого проекта библиотеку и назвал ее PhotoLibrary, это была простая .NET-оболочка для тегов EXIF ​​2.2. К сожалению, сайт GotDotNet исчез, у CodePlex его нет, ссылки на веб-сайт Омара не работают, и у меня больше нет копии.

Но если вы сможете покопаться в Google, возможно, вы найдете его, и он поможет вам.

Если вы компилируете с v3 Framework (или более поздней версии), вы можете загружать изображения с помощью BitmapSource класс, который предоставляет метаданные EXIF ​​через Metadata недвижимость

Новая и очень быстрая библиотека - ExifLib - быстрое извлечение данных Exif для .NET 2.0 Саймона Маккензи. В итоге я использовал этот, и код прост в использовании и понимании. Я использовал его для переименования приложения в соответствии с датой съемки. Интересно, сколько раз писалось такое приложение.

Мой совет: обязательно вызывайте Dispose для объектов ExifReader после того, как закончите с ними, или файлы останутся открытыми.

Кажется многообещающим .. Спасибо

Odys 14.04.2014 17:53

Он не поддерживает необработанные файлы! работает только с JPG!

S.Serpooshan 19.06.2019 11:20

Если вы хотите использовать библиотеку с открытым исходным кодом, могу ли я смиренно предложить одно из моих собственных творений?

Проект экстрактор метаданных существует с 2002 года для Java и теперь доступен для .NET.

  • Открытый исходный код (Apache 2.0)
  • Тщательно протестирован и широко используется
  • Поддерживает множество типов изображений (JPEG, TIFF, PNG, WebP, GIF, BMP, ICO, PCX ...)
  • Поддерживает множество типов метаданных (Exif, IPTC, XMP, JFIF, ...)
  • Поддерживает множество специфичных для производителя полей (Canon, Nikon, ...)
  • Очень быстро (полностью обрабатывает ~ 400 изображений общим объемом 1,33 ГБ за ~ 3 секунды) с низким потреблением памяти
  • Сборки для .NET 3.5, .NET 4.0+ и PCL

Это доступно через NuGet или GitHub.

Пример использования:

IEnumerable<Directory> directories = ImageMetadataReader.ReadMetadata(path);

foreach (var directory in directories)
foreach (var tag in directory.Tags)
    Console.WriteLine($"{directory.Name} - {tag.TagName} = {tag.Description}");

Другие вопросы по теме