1

首先,我使用 SSRS 渲染 TIFF 文档,发现虽然可以将颜色深度参数传递给 SSRS 2005 或 2008,但它会丢弃它并始终生成 24bpp 文件。没有运气,得到了这个由 SSRS 渲染方法生成的 24bpp 文件,将其加载到 System.Drawing.Bitmap 对象上,并成功地将其以 204dpi x 196dpi(11.50 英寸 x 8.82 英寸)缩放到 1728 像素 x 2347 像素,但在绘制时失败了到一个新的单色(双色调) System.Drawing.Bitmap 对象。.Net 接受创建 1bpp 索引文件,但没有提供颜色深度转换,因此我必须编写自定义 c# 函数来实现它。在缩放、更改分辨率和更改颜色深度后,我将 System.Drawing.Bitmap 对象保存到文件中,发现标签 254 (NewSubfileType) 的值无效 0 而不是 2 (FILETYPE_PAGE),缺少标记 266 (FillOrder),位图内容分布在多个条带上。环顾 Encoder 和 EncoderParameters,发现无法更改 Bitmap Save 和 SaveAdd 方法,以便它们生成我需要的正确格式(tiff-f)的文件。现在,厌倦了 System.Drawing + GDI+,发现了这个 System.Windows.Media.Imaging。它是否也受到 GDI+ 的困扰或使用新的 DirectX 技术,并且可以让我以一种轻松生成兼容 tiff-f 文件的方式驱动它?

4

1 回答 1

0

尝试在该程序集上运行 Reflector 并深入研究该代码以找出答案。您还可以设置您的 Visual Studio 以允许您在执行该代码时在调试器中单步调试 .NET 源代码。

于 2009-07-19T15:57:35.637 回答