I deal with a lot of TIFF images, especially 1-bit with Group 4 Compression. Most of these images are letter and legal size, scanned at 200dpi to 300dpi, which is fairly standard for business documents.
Of course TIFF is not a standard image format for web browsers, so displaying these images in the web has been a pain (remember the Java
<applet>
? ugh!). From my observations, PNGs are 50% larger, and, before PNGs were widely supported, there was GIF, more than twice a large. You can see the different sizes produced with ImageMagick’s convert
:$ ls -l
total 2056
-rw-r--r-- 1 thad staff 130262 May 6 15:16 kofax.gif
-rw-r--r-- 1 thad staff 772436 May 6 15:46 kofax.jpg
-rw-r--r-- 1 thad staff 87036 May 6 15:12 kofax.png
-rw-r--r-- 1 thad staff 57222 Apr 30 17:59 kofax.tif
I have been delighted to stumble on tiff.js, a port of LibTIFF made by compiling the LibTIFF C code with Emscripten. (To me, this solution is nothing short of genius and/or magic).
Now for displaying the image. On first viewing, I want to reduce the image to fit in the bowser window. However doing so with an HTML5 Canvas gave me a jagged image. Twitter to the rescue! Miles Elam (@mileselam) explained that I should increase the size of my
<canvas>
and reduce its display with style settings. The result is a smooth representation of my TIFF image (shown above at 30% its size).
The source code for this demo may be found on GitHub.
No comments:
Post a Comment
Note: only a member of this blog may post a comment.