使用Bit Miracle libtiff更改tiff的dpi时的问题

时间:2014-09-19 10:53:44

标签: libtiff libtiff.net

我正在尝试使用Bit Miracle libtiff更改tiff图像的分辨率。以下是代码段。当我这样做,tiff图像分辨率改变,但其他tiff参数消失了,我无法打开tiff文件。如果我在这里做错了,你能帮忙吗?

using (Tiff image = Tiff.Open(fileName, "a"))
{
 image.SetField(TiffTag.XRESOLUTION, 200);
 image.SetField(TiffTag.YRESOLUTION, 300);
 image.WriteDirectory();
}

1 个答案:

答案 0 :(得分:2)

请注意,更改TiffTag.XRESOLUTIONTiffTag.YRESOLUTION无法更改图片数据,只会更改观看者或打印机解释数据的方式。

至于代码本身,你应该:

  • 在调用SetDirectory(0)方法之前调用SetField。这是因为你以附加模式打开文件。

  • 使用RewriteDirectory代替WriteDirectory。否则,您可能会损坏图像数据。