How do I successfully remove an images property items? I have tried loading the image and then looping thru using the image.ProperyIdList and then calling .RemovePropertyItem and then saving the image to a new file, but the new file still has all the metadata. I have also tried to zero out all the bytes for each propertyItem.value but that causes a genric gdi+ error when I save. I have also tried pushing the image into a memeory stream and back, thinking it would clear the metadata. Any ideas?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
I was able to accomplish the following by using the code below. It is not the fastest but it does work. I basically strip off the metadata I want and then create a new image for the web with no properties, thus making sure the personal data is off the photo.
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