Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/drewnoakes/xmp-core-dotnet

.NET library for working with the Extensible Metadata Platform (XMP)
https://github.com/drewnoakes/xmp-core-dotnet

dotnet dotnet-core imaging metadata xmp

Last synced: 3 months ago
JSON representation

.NET library for working with the Extensible Metadata Platform (XMP)

Awesome Lists containing this project

README

        



[![Build status](https://ci.appveyor.com/api/projects/status/38jnjb2phnn7fqxs?svg=true)](https://ci.appveyor.com/project/drewnoakes/xmp-core-dotnet)
[![XmpCore NuGet version](https://img.shields.io/nuget/v/XmpCore)](https://www.nuget.org/packages/XmpCore/)
[![XmpCore NuGet download count](https://img.shields.io/nuget/dt/XmpCore)](https://www.nuget.org/packages/XmpCore/)

This library is a port of Adobe's XMP SDK to .NET.

The API should be familiar to users of Adobe's XMPCore 6.1.10, though it has been modified
in places to better suit .NET development.

## Sample Usage

```csharp
IXmpMeta xmp;
using (var stream = File.OpenRead("some-file.xmp"))
xmp = XmpMetaFactory.Parse(stream);

foreach (var property in xmp.Properties)
Console.WriteLine($"Path={property.Path} Namespace={property.Namespace} Value={property.Value}");
```

`XmpMetaFactory` has other methods for reading from `string` and `byte[]`, as well as support for parsing options.
Returned properties provide additional information, but the above example should be enough to get you started.

## Installation

The easiest way to reference this project is to install the [`XmpCore` package](https://www.nuget.org/packages/XmpCore/):

PM> Install-Package XmpCore

The NuGet package has no other dependencies.

As of version 6.1.10.1 the package is now strong named. Before then, a separate `XmpCore.StrongName` package exists.

## Framework support

The project targets `net35` and `netstandard1.0`, meaning you can use it pretty much anywhere these days.

## History

Initially ported by Yakov Danila and Nathanael Jones, the project is now maintained
by Drew Noakes and contributors on GitHub.

## License

The [same BSD license](http://www.adobe.com/devnet/xmp/library/eula-xmp-library-java.html) applies to this project
as to Adobe's open source XMP SDK, from which it is derived.