|
The most common graphic file format used in all web browsers
is the GIF format. Unisys Corp. currently holds a patent
on the LZW compression algorithm used in compressed GIF files
and unfortunately, you are required to purchase a license
from Unisys at a cost of between $5000 to $7500 if you want
to generate true LZW compressed GIF files on a web server.
We had originally hoped that we would be able to purchase a license from Unisys
for the TAL Bar Code ActiveX control and extend that license to the users of
our control however Unisys does not allow for this type of licensing. Because
the TAL Bar Code ActiveX control is considered a "development tool",
each user of the control is required to purchase their own license to use the
LZW compression scheme. The TAL Bar Code ActiveX control fully supports LZW
compression in GIF files however this functionality must be enabled using a
special "unlock key". If you purchase a LZW license from Unisys,
you can send TAL Technologies a copy of your license and we will provide you
with a special "unlock key" that you can use in the LZWUnlockKey
property of the control to unlock this functionality.
Note: The LZW Patent is due to expire in the July of 2003 after which the LZW
compression scheme will enter the public domain and therefore not require you
to purchase a license from Unisys.
The GIF specification technically does not support uncompressed
GIFs however it is possible to create uncompressed GIFs that
trick any program that can read GIF files into rendering
them. If you do not purchase the LZW license from Unisys
then you can only create uncompressed GIFs with the TAL Bar
Code ActiveX control (Plus version) however the file size
of your GIFs will be much larger than an equivalent compressed
GIF bar code image. The trick that must be employed to create
uncompressed GIFs actually causes them to be up to four times
as large as an equivalent uncompressed bitmap. Uncompressed
GIFs are typically eight times larger than the same image
saved as a compressed GIF. For example, a typical bar code
that is three inches wide and one inch tall saved with a
resolution of 300 pixels per inch with one bit per pixel
will be roughly 150K bytes in size when saved as an uncompressed
GIF. The same bar code saved using GIF compression will be
roughly 17K bytes in size.
One technique that you can use to keep the size of your
uncompressed GIFs to a minimum is to create the bar code
with a very small height like 100 mils (one tenth of an inch)
and then stretch the bar code height using a higher value
in the Height setting in the image tag in your HTML code.
If you create the same three inch wide bar code as above
using a height of 100 mils (one tenth of an inch) instead
of the full one inch, you will cut the size of the file down
by a factor of ten. When you set the height setting in your
HTML code to a value (in pixels) that is equivalent to one
inch, the browser will stretch the height of the image to
the desired size. Because all of the information encoded
in a bar code is contained in the widths of the bars and
spaces and not in the height, stretching the height will
not degrade the readability of the bar code. Using this technique,
you can drastically reduce the download time for both compressed
and uncompressed GIF files. In the example above, our unreasonably
large 150K byte uncompressed GIF bar code image file drops
in size to 15K bytes which is a perfectly reasonable file
size for a web based GIF image.
Note: The PNG file format is an excellent alternative to
the GIF file format. PNG files are highly compressed using
an algorithm that is in the public domain therefore no license
fee is required to use them. Most browsers including Netscape
4.0, Internet Explorer 4.0, and all newer releases of both,
fully support PNG files. The same three inch by one inch
bar code as in the above example squeezes down to an image
file size of under 1000 bytes when saved as a PNG file. This
is remarkably good compression considering that the smallest
possible size for an uncompressed three inch by one inch,
300 DPI, raster image with 1 bit per pixel is 33750 bytes.
(Almost a 35 to 1 compression ratio!)
|