2009-08-17 74 views
2

我的程序将多页TIFF转换为PDF不再适用于Windows 7. 程序包含遍历TIFF页面的代码,将每个页面转换为TIFF格式,并将CCITT Group4压缩格式转换为TIFF格式,并将位图数据插入生成的PDF文件。Windows 7:保存为TIFF CCITT Group4已更改?

转换被以下列方式(C#)来完成:

ImageCodecInfo tiffCodecInfo = GetEncoderInfo("image/tiff"); 
EncoderParameters myEncoderParameters = new EncoderParameters(2); 

// Save the bitmap as a TIFF file with CCITT group4 compression.  
myEncoderParameters.Param[0] = new EncoderParameter System.Drawing.Imaging.Encoder.Compression, (long)EncoderValue..CompressionCCITT4); 
myEncoderParameters.Param[1] = new EncoderParameter(System.Drawing.Imaging.Encoder.ColorDepth, 1L); 
image.Save(source, tiffCodecInfo, myEncoderParameters); 

似乎GDI +的行为在Windows 7被改变:在一个单一的条带将所得CCITT位图数据不再编码。正因为如此,我不能在我的PDF文件中使用这个位图数据。

问题:有谁知道我可以告诉GDI +如何在单个条带中对位图数据进行编码吗?

回答

1

我收到了来自微软的回答:

是,在Windows 7中,我们做了广泛的工作为TIFF编解码器。其中一项工作是支持多条解码和编码。不幸的是,没有办法控制编码器输出的条带数量。

+0

DOEN有人通过有机会了解如何多条CCITT G4的数据转换为单条? – Corne 2009-08-18 07:16:03

+0

我对GDI +一无所知,但我已经编写了可以做你需要的C代码。它会将多条G4图像转换为紧凑的游程编码格式,然后在单条中将其重新编码为G4。 让我知道,如果我可以帮忙。 [email protected] – BitBank 2009-08-20 08:06:03