在.tiff图像中获取ImageUniqueID

时间:2016-11-10 10:37:30

标签: c# .net image metadata

使用以下Code-Snippet,我获得了.jpg图像的UniqueImageId。但是相同的代码对.tiff文件不起作用。有人有想法吗? THX

Image myImage = new Bitmap(@"C:\path\to\picture.tiff");
System.Text.ASCIIEncoding encoding = new System.Text.ASCIIEncoding();
PropertyItem pi = myImage.GetPropertyItem(42016);   // EXIF-Code -> UniqueImageID
string uniqueImageId = encoding.GetString(pi.Value, 0, 32);

1 个答案:

答案 0 :(得分:0)

我的解决方案:

string uniqueImageId;
Tiff mytiff = Tiff.Open(absolutePath, "r");
FieldValue[] exifIFDTag = mytiff.GetField(TiffTag.EXIFIFD);
int exifIFDOffset = exifIFDTag[0].ToInt();
mytiff.ReadEXIFDirectory(exifIFDOffset);
FieldValue[] value = mytiff.GetField(TiffTag.EXIF_IMAGEUNIQUEID);
if (value != null)
{
    for (int i = 0; i < value.Length; i++)
    {
        uniqueImageId = value[i].ToString();
    }

}
mytiff.Close();