在Windows XP下更改VB.net中的EXIF缩略图

时间:2013-10-30 10:43:37

标签: vb.net thumbnails exif

我构建了一个应用程序,对图片进行一些修改,更改它的EXIF缩略图以匹配新创建的图片并保存。

它在Win 7下完美运行,但在XP下,EXIF缩略图保持不变。以下是更改缩略图的代码部分。

        Dim MS As New MemoryStream()

        Dim bmp_thumb = bmp.GetThumbnailImage(160, 120, Nothing, New IntPtr())

        bmp_thumb.Save(MS, ImageFormat.Jpeg)
        bmp_thumb.Dispose()

        MS.Position = 0
        Dim smallthumbbytes As Byte() = MS.ToArray()

        Dim PropertyItems = bmp.PropertyItems
        PropertyItems(0).Id = &H501B
        PropertyItems(0).Type = 1
        PropertyItems(0).Len = smallthumbbytes.Length
        PropertyItems(0).Value = smallthumbbytes
        bmp.SetPropertyItem(PropertyItems(0))

        PropertyItems = bmp.PropertyItems
        PropertyItems(0).Id = &H5023
        PropertyItems(0).Type = CShort(3)
        PropertyItems(0).Len = 2
        PropertyItems(0).Value = New Byte() {6, 0}
        bmp.SetPropertyItem(PropertyItems(0))

        bmp.Save(filename)

我应该注意,图片的缩略图偏移量在XP下也不会改变。

任何帮助表示赞赏!

0 个答案:

没有答案