1

我在 XP 和 Windows 7 上的图像文件存在问题,但它在 Windows 2008 框中完美运行。谈到实际问题,问题中的 TIF 图像是带有白色背景的发票表单图像,带有发票详细信息。当我在 2008 年打开它时,它以白色背景打开,但是当我在 XP 和 Windows 2008 中打开它时,它变成带有白色文本的黑色背景。我正在就这个问题寻求一些帮助。1. 是否是操作系统问题 2. 如果是操作系统问题,我如何使用任何代码(最好是 C#)将背景颜色更改为白色,因为我使用 C# 进行开发。

提前致谢

萨蒂什

4

2 回答 2

1

简单地我们可以交换调色板然后问题将由此解决......

         Dim plet As ColorPalette = Image.Palette
         plet.Entries(1) = c1
         plet.Entries(0) = c2
         Image.Palette = plet

但对识别有问题的图像感到震惊,即因为我们必须将其应用于仅存在问题的图像。否则正确的图像也会倒置。

于 2012-12-27T11:23:31.340 回答
0

可能是 CMYK 或透明度问题,或者它以 16 位颜色格式(每个组件)保存。

但是,如果不访问一个实际文件进行分析,这很难确定。

更新:

问题 1:对于 TIFF 文件 - 在 Windows XP 上,Photometric 标签被 Windows 照片查看器及其基础技术忽略,TIFF 文件使用单个位平面(2 种颜色)。这是一个错误。

解决方案 1a:手动输入(切换到现有)调色板条目以强制位 0(关闭)黑色和位 1(打开)白色。

解决方案 1b:将文件另存为 RGB 文件/灰度会更理想,但在 GDI+ 中对 8 位灰度文件 IMO 没有很好的支持)。

问题 2:字节顺序。在 Windows XP 上,字节顺序 (big-endian) 可能会导致问题。通常,TIFF 以 Motorola big-endian 格式 (MSB) 保存,但在 Windows XP 上,TIFF 文件假定为 little-endian 格式。

解决方案 2a:以 little-endian 顺序 (Intel) 为新文件保存新的 TIFF 文件

解决方案 2b:如果重新保存(重新扫描)不是现有文件的选项,则重新排序现有文件的内容,将字节顺序从 LSF(英特尔)切换到 MSF(摩托罗拉)。更新标头以指示新的字节顺序(将 II 替换为 MM 等)。

于 2012-12-18T00:26:13.240 回答