2010-10-12 107 views
2

我的C#应用​​程序从TWSX_FILE模式Kofax VRS的TWAIN驱动程序接收图像文件,但是我自己的基于.NET的应用程序,也没有Windows的默认图片浏览器可以打开这些文件。但是,Adobe Photoshop可以毫无问题地打开它们。 我试过FreeImage库,虽然它检测到它们的尺寸正确,但它呈现黑色图像。 似乎KOFAX具有某种自己的位图格式的其它的头是正常的BMP文件不同: http://www.fileformat.info/mirror/egff/ch03_03.htm 我已上载这里,这些文件中的一个: http://www.box.net/shared/aby42aagz4 我想知道我可以在打开这些图片我任何人都知道任何轻量级的开源/免费库或C++/C#代码片段,支持这种图像格式?KOFAX位图文件:我怎样才能打开它们?

+0

你确定他们实际上是位图文件? Kofax VRS通常接受来自扫描仪的8位灰度图像,然后输出双色TIFF图像。 – Brian 2010-12-29 01:56:48

+0

@Brian:对不起,我还没有看到你的评论,直到现在。正如我在我的问题中提到的那样,我已经上传了这些文件中的一个,它似乎是一个BMP文件,如果使用文本编辑器打开它,它将以“BM”开头,并且Photosop将其打开为8位RGB彩色图像索引彩色图像,它实际上有两种以上的颜色。 – 2011-02-07 16:32:36

回答

2

您已经基本回答了您自己的问题:该文件既不是Windows位图文件,也不是Kofax Raster格式文档。

正如您所指出的那样,前两个字节是'BM',这表明该文件声称是Windows位图。但是,如果确实如此,接下来的四个字节将包含文件大小。在示例文件中,接下来的四个字节包含比实际文件大小大得多的值,因此无法正确解释为Windows位图文件。

作为链接到状态的fileformat.info站点,如果该文件确实是Kofax Raster Format,则它将以字节'68464B2Eh'开始。因此,您的文件也不是Kofax Raster格式。事实上,我试图用Kofax的VCDemo软件打开它,并得到以下错误:“错误20204 - 内部无效状态”

因此,Kofax自己的软件认为该文件已损坏。

是Photoshop可以打开它,并显示的东西并不一定意味着它是一个有效的图像文件格式的事实。图像处理软件包通常会试图猜测解释文件的原始字节。有时他们很幸运,有时候不幸。

试图找到可以读取文件的内容假定文件是标准格式,而不是。因此,我不会搜索能够读取文件的内容,而是搜索您使用的VRS/TWAIN配置为何产生非标准格式。