我想清除tif文件中的一些屬性標記項。
我的測試代碼:C# - 從tif文件中刪除屬性標記項
Image sourceImg = new Bitmap("A10034.tif");
Image img = (Image)sourceImg.Clone();
sourceImg.Dispose();
PropertyItem[] propertyItemsList = img.PropertyItems;
foreach (PropertyItem property in propertyItemsList)
{
if ((property.Id == 270 || property.Id == 271 || property.Id == 272 || property.Id == 305 ||
property.Id == 315 || property.Id == 316) || (property.Id > 320 && property.Id != 33432))
{
img.RemovePropertyItem(property.Id);
}
}
ImageCodecInfo Encoder = GetEncoderInfo("image/tiff");
EncoderParameters EncoderParams = new EncoderParameters(2);
EncoderParams.Param[0] = new EncoderParameter(System.Drawing.Imaging.Encoder.Compression, (Int64)EncoderValue.CompressionNone);
EncoderParams.Param[1] = new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, 100L);
if (System.IO.File.Exists("cleared_A10034.tif"))
{
System.IO.File.Delete("cleared_A10034.tif");
}
img.Save("cleared_A10034.tif", Encoder, EncoderParams);
img.Dispose();
這個工程在WinXP和Windows 8,但沒有在Win 7
在目標文件相同Win7的源文件所有標籤的工作。沒有刪除。
任何想法?
謝謝。
如果需要,您可以下載test project。
這裏的答案可能會有所幫助:http://stackoverflow.com/questions/2340337/how-can-i-get-net-to-save-this-image(可能不)。 – Chris
你能上傳你的圖片嗎? – Faraday
我添加了下載測試項目的鏈接(源代碼和tif圖像)。謝謝。 – Igor