2012-08-24 22 views
0

如何成功删除图像属性项目?我已经尝试加载图像,然后循环使用image.ProperyIdList,然后调用.RemovePropertyItem,然后将图像保存到新文件,但新文件仍具有所有元数据。我也尝试将每个propertyItem.value的所有字节都清零,但是当我保存时会导致genric gdi +错误。我也尝试将图像推入Memeory流中,并认为它会清除元数据。有任何想法吗?VB.Net - 删除image.PropertyItems数据

回答

0

我能够使用下面的代码完成以下工作。这不是最快的,但它确实有效。我基本上剥离了我想要的元数据,然后为没有属性的网络创建新图像,从而确保个人数据不在照片中。

Using img As Image = Image.FromFile(fileName) 
      Using newImage As New Bitmap(img.Width, img.Height) 

       Using gr As Graphics = Graphics.FromImage(newImage) 
        gr.InterpolationMode = Drawing2D.InterpolationMode.Bilinear 
        gr.DrawImage(img, New Rectangle(0, 0, img.Width, img.Height)) 
       End Using 
       newImage.Save(newFileName) 
      End Using 
     End Using 
+0

嗯,只是做到了这一点,但注意到文件大小增加了大约14K,只为那些后来...(30.694字节高达45191字节保存后) – jwwishart