tiff到PDF转换的反色

时间:2010-05-27 06:34:02

标签: c# pdf itextsharp tiff

我确定我在这里犯了一些愚蠢的错误,但是当将tiff文件转换为PDF时,颜色会反转。我无法弄清楚为什么。这是我的代码:

Document document = new Document(PageSize.A4, 50, 50, 50, 50);

PdfWriter writer = PdfWriter.GetInstance(document, new FileStream("Image.pdf", FileMode.Create));

System.Drawing.Bitmap bm = new System.Drawing.Bitmap(@"C:\Temp\338814-00.tif");
int total = bm.GetFrameCount(FrameDimension.Page);                

document.Open();
PdfContentByte cb = writer.DirectContent;

for (int k = 0; k < total; ++k)
{
 bm.SelectActiveFrame(FrameDimension.Page, k);
 MemoryStream ms = new MemoryStream();
 bm.Save(ms, ImageFormat.Tiff);

 Image img = Image.GetInstance(ms.ToArray());

 img.ScalePercent(72f / (float)img.DpiX * 100);
 img.SetAbsolutePosition(0, 0);

 cb.AddImage(img);
 document.NewPage();     
}
document.Close();

感谢。

1 个答案:

答案 0 :(得分:1)

最佳解决方案似乎是替换该行:

bm.Save(ms, ImageFormat.Tiff);

bm.Save(ms, ImageFormat.Png);

Png似乎为Tiff图像提供了最佳的速度/文件大小性能。为什么这个有用我还是不知道。