AWARE SYSTEMS
TIFF and LibTiff Mail List Archive

Thread

1996.12.08 13:53 "NCR TIFF to TIFF conversion help...", by Michael J. Callahan
1996.12.08 16:35 "Re: NCR TIFF to TIFF conversion help...", by Helge Blischke

1996.12.08 16:35 "Re: NCR TIFF to TIFF conversion help...", by Helge Blischke

I have to convert NCR TIFF format images to 'standard' TIFF format images, writing in C. I have some source code which claims to do this conversion. After conversion the TIFF image has the following 2 problems I am aware of (and note that the orientation value of image is 3).

Using XV under Linux, the image loads and displays without any warning issued. The problem is the image is reversed horizontally, with the right side on the left and vice versa. Vertically the display is correct. How can I reverse the image horizontally? I have tried settings 1-8 on the tagvalue for orientation, and the image will flip upside down, but none of the values will cause a right to left flip. That seems very strange to me! I have picked up the specs for both version 4 and version 5, the file I'm writing looks correct by these.

The image will not load and display under Lviewpro on NT, with the error msg 'Unknown data compression algorithm 4(0x4)'. What can I do with regards to uncompressing using the unknown algorithym, and then save using a different compression type? Is that my only/best solution?

Can anyone give me any help with this? Is there information and/or source code available covering this area? What would be a good book on this and similar questions? I have little flexibility with regard to image format or compression since these images have to be used by an existing business system.

Your problem might be due to a misinterpretation of the TIFF spec by the software producing your images. I encountered similar problems even with software like FrameMaker on various platforms, especially with TIFF G3 or G4 images. If you do not find an "easy" solution, you might have to write your own "tiffcp" and reverse the bit/byte ordering by yourself. If you want to, I could give you some nice little (platform independent) c subroutines you could use to do that.

H. Blischke