2010-10-12 71 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配置爲何產生非標準格式。