Add extra support in Intergraph driver
|Reported by:||cleo||Owned by:||warmerdam|
Added the following functionality.
- Enable reading bitonal rle files wider than 22784 (0x5900) pixels.
- Add RESOLUTION metadata/option to read/write DPI.
- Add write support for .rle (bitonal rle files) to test the above.
All files written with the INGR driver are uncompressed. I needed some output files with 0x5900 scanline header tags to make sure it no longer crashed. So I added write support for compressed .rle files.
The issue with the 0x5900 scanline header tag was that the existing code would just skip over the header. That's a problem if it's a file that has no scanline headers. In such a case, the 0x5900 is a valid span of 22784. I have encountered such a file and is a requirement for us that these load properly. The fix was non-trivial, but the main code did not change much. I added several checks beforehand to ensure that the scanline header really was there. Codepath for files smaller than 22784 pixels wide is almost identical to what was there before.
I've tested with several files with different conditions. I attached a file that has a span of 0x5900 and has no header. This would not display correctly before.
All patches are based off the trunk. I added the final files and patches in the zip file.