IptcDictionary Class
Represents a dictionary of IPTC entries.
Namespace: GleamTech.ImageUltimateAssembly: GleamTech.ImageUltimate (in GleamTech.ImageUltimate.dll) Version: 6.2.0
public sealed class IptcDictionary : IMetadataDictionary<IptcTag, IptcEntry>,
IEnumerable<IptcEntry>, IEnumerable
Public NotInheritable Class IptcDictionary
Implements IMetadataDictionary(Of IptcTag, IptcEntry),
IEnumerable(Of IptcEntry), IEnumerable
- Inheritance
- Object IptcDictionary
- Implements
- IMetadataDictionaryIptcTag, IptcEntry, IEnumerableIptcEntry, IEnumerable
//Load image info of "c:\SomeFolder\InputFile.png"
using (var imageInfo = new ImageInfo(@"c:\SomeFolder\InputFile.png"))
{
}
//---------------------------------------
//Load with a virtual path string:
//See below for other path string examples.
using (var imageInfo = new ImageInfo("~/SomeFolder/InputFile.png"))
{
}
//Load with a URL string:
//See below for other path string examples.
using (var imageInfo = new ImageInfo("http://example.com/SomeFolder/InputFile.png"))
{
}
//Load with a Data URL string:
//See below for other path string examples.
using (var imageInfo = new ImageInfo("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"))
{
}
//Load with a file provider instance:
//See below for other file provider examples (UNC Path, AmazonS3, AzureBlob, Database etc.).
var fileProvider = new FileSystemFileProvider
{
File = "InputFile.png",
Location = new PhysicalLocation
{
Path = @"c:\SomeFolder"
}
};
using (var imageInfo = new ImageInfo(fileProvider))
{
}
//Load with a provider string:
//See below for other provider string examples (UNC Path, AmazonS3, AzureBlob, Database etc.).
using (var imageInfo = new ImageInfo(@"Type=FileSystem; File=InputFile.png; Location='Type=Physical; Path=c:\SomeFolder'"))
{
}
'Load image info of "c:\SomeFolder\InputFile.png"
Using imageInfo As New ImageInfo("c:\SomeFolder\InputFile.png")
End Using
'---------------------------------------
'Load with a virtual path string:
'See below for other path string examples.
Using imageInfo As New ImageInfo("~/SomeFolder/InputFile.png")
End Using
'Load with a URL string:
'See below for other path string examples.
Using imageInfo As New ImageInfo("http://example.com/SomeFolder/InputFile.png")
End Using
'Load with a Data URL string:
'See below for other path string examples.
Using imageInfo As New ImageInfo("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")
End Using
'Load with a file provider instance:
'See below for other file provider examples (UNC Path, AmazonS3, AzureBlob, Database etc.).
Dim fileProvider As New FileSystemFileProvider() With {
.File = "InputFile.png",
.Location = New PhysicalLocation() With {
.Path = "c:\SomeFolder"
}
}
Using imageInfo As New ImageInfo(fileProvider)
End Using
'Load with a provider string:
'See below for other provider string examples (UNC Path, AmazonS3, AzureBlob, Database etc.).
Using imageInfo As New ImageInfo("Type=FileSystem; File=InputFile.png; Location='Type=Physical; Path=c:\SomeFolder'")
End Using
//Show info for a specific EXIF tag:
using (var imageInfo = new ImageInfo(@"C:\Input\Picture1.jpg"))
{
var entry = imageInfo.ExifDictionary[ExifTag.Image.Artist];
Console.WriteLine("Tag: " + entry.Tag);
Console.WriteLine("Value: " + entry.Value);
Console.WriteLine("Description: " + entry.Tag.Description);
Console.WriteLine();
if (imageInfo.ExifDictionary.TryGet(ExifTag.Image.Software, out ExifEntry entry2))
{
Console.WriteLine("Tag: " + entry2.Tag);
Console.WriteLine("Value: " + entry2.Value);
Console.WriteLine("Description: " + entry2.Tag.Description);
Console.WriteLine();
}
}
//Show info for a specific IPTC tag:
using (var imageInfo = new ImageInfo(@"C:\Input\Picture1.jpg"))
{
var entry = imageInfo.IptcDictionary[IptcTag.Application2.Byline];
Console.WriteLine("Tag: " + entry.Tag);
Console.WriteLine("Value: " + entry.Value);
Console.WriteLine("Description: " + entry.Tag.Description);
Console.WriteLine();
if (imageInfo.IptcDictionary.TryGet(IptcTag.Application2.ObjectName, out IptcEntry entry2))
{
Console.WriteLine("Tag: " + entry2.Tag);
Console.WriteLine("Value: " + entry2.Value);
Console.WriteLine("Description: " + entry2.Tag.Description);
Console.WriteLine();
}
if (imageInfo.IptcDictionary.TryGet(IptcTag.Application2.Category, out IptcEntry[] entries))
{
foreach (var entry3 in entries)
{
Console.WriteLine("Tag: " + entry3.Tag);
Console.WriteLine("Value: " + entry3.Value);
Console.WriteLine("Description: " + entry3.Tag.Description);
Console.WriteLine();
}
}
}
'Show info for a specific EXIF tag:
Using imageInfo As New ImageInfo("C:\Input\Picture1.jpg")
Dim entry = imageInfo.ExifDictionary(ExifTag.Image.Artist)
Console.WriteLine("Tag: " + entry.Tag.ToString())
Console.WriteLine("Value: " + entry.Value)
Console.WriteLine("Description: " + entry.Tag.Description)
Console.WriteLine()
Dim entry2 As ExifEntry
If imageInfo.ExifDictionary.TryGet(ExifTag.Image.Software, entry2) Then
Console.WriteLine("Tag: " + entry2.Tag.ToString())
Console.WriteLine("Value: " + entry2.Value)
Console.WriteLine("Description: " + entry2.Tag.Description)
Console.WriteLine()
End If
End Using
'Show info for a specific IPTC tag:
Using imageInfo As New ImageInfo("C:\Input\Picture1.jpg")
Dim entry = imageInfo.IptcDictionary(IptcTag.Application2.Byline)
Console.WriteLine("Tag: " + entry.Tag.ToString())
Console.WriteLine("Value: " + entry.Value)
Console.WriteLine("Description: " + entry.Tag.Description)
Console.WriteLine()
Dim entry2 As IptcEntry
If imageInfo.IptcDictionary.TryGet(IptcTag.Application2.ObjectName, entry2) Then
Console.WriteLine("Tag: " + entry2.Tag.ToString())
Console.WriteLine("Value: " + entry2.Value)
Console.WriteLine("Description: " + entry2.Tag.Description)
Console.WriteLine()
End If
Dim entries As IptcEntry()
If imageInfo.IptcDictionary.TryGet(IptcTag.Application2.Category, entries) Then
For Each entry3 In entries
Console.WriteLine("Tag: " + entry3.Tag.ToString())
Console.WriteLine("Value: " + entry3.Value)
Console.WriteLine("Description: " + entry3.Tag.Description)
Console.WriteLine()
Next
End If
End Using
//Modifying EXIF metadata:
using (var imageTask = new ImageTask(@"C:\Input\Picture1.jpg"))
{
imageTask.Info.ExifDictionary.Remove(ExifTag.Image.Software);
imageTask.Info.ExifDictionary.Set(ExifTag.Image.Artist, "UPDATED Artist TAG");
imageTask.Info.IptcDictionary.Remove(IptcTag.Application2.Byline);
imageTask.Info.IptcDictionary.Set(IptcTag.Application2.ObjectName, "UPDATED ObjectName TAG");
imageTask.Save(@"C:\Output\Picture2.jpg");
}
'Modifying EXIF metadata:
Using imageTask = New ImageTask("C:\Input\Picture1.jpg")
imageTask.Info.ExifDictionary.Remove(ExifTag.Image.Software)
imageTask.Info.ExifDictionary.Set(ExifTag.Image.Artist, "UPDATED Artist TAG")
imageTask.Info.IptcDictionary.Remove(IptcTag.Application2.Byline)
imageTask.Info.IptcDictionary.Set(IptcTag.Application2.ObjectName, "UPDATED ObjectName TAG")
imageTask.Save("C:\Output\Picture2.jpg")
End Using
IptcDictionary |
Initializes a new instance of the IptcDictionary class.
|
Count | Gets the number of entries contained in this dictionary. |
IsChanged | Gets a value indicating whether this dictionary is changed. |
Item | Gets the first occurrence of the entry for the specified tag. |
Clear | Removes all entries from this dictionary. |
Contains | Determines whether this dictionary contains an entry with the specified tag. |
GetEnumerator |
Returns an enumerator that iterates through this dictionary.
|
Remove(IptcTag) | Removes all entries for the specified tag from this dictionary. |
Remove(IptcTag, String) | Removes the entry for the specified tag and value from this dictionary. |
Set | Sets the value for the specified tag in this dictionary. |
TryGet(IptcTag, IptcEntry) | Gets the first occurrence of the entry associated with the specified tag. |
TryGet(IptcTag, IptcEntry) | Gets all entries associated with the specified tag. |