|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Overview
|
FAQ | Download | Use It Online! | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
This site uses no graphical image files (except the banner) That's right, neither this page, nor any page in the Image2HTML pages, contain any GIF, JPEG, or any other kind of image file, except for the Sawmill advertisement graphic. So how did we do the graphics at the top and bottom of this page? Read on.... Image2HTML Overview Image2HTML is a program, written in Java, which converts a bitmap image (like a JPEG or a GIF) into an HTML table. The resulting table is constructed very precisely, to ensure that it looks exactly like the original image. Essentially, it creates a table with a separate 1x1 table cell for each pixel in the original image, and sets the color of that cell to the same color as the corresponding image. A compression mechanism can be used to combine adjacent pixels of the same color into a single table cell. All images on this page are done in this manner, including this divider:
Why would I want to use it? Since images created with Image2HTML are part of the HTML page itself, they are loaded when the page text loads. This has the advantage of requiring only a single network access to get the text of the page and the image, rather than the two network accesses usually required (the first to get the HTML text of the page, and the second to get the image). Images created with Image2HTML might also possibly be useful to people writing programs which generate HTML, but which cannot for some reason include inlined images (this is often the case for CGI programs, which may not know where the server directory is, or may not be able to access it). Such programs can include simple images in their output using the images generated by Image2HTML. As an added benefit, Image2HTML provides a primitive form of "copy protection" for images, since they cannot be right-clicked to download them in the standard manner (thanks to Douglas Wood for pointing that out). Finally, images created with Image2HTML will appear even when images have been turned off in the browser (or mail client). So if you want your image to show up regardless of the settings of the visitor's web browser or mail client, Image2HTML provides a way to do it. This can be a significant benefit for HTML-encoded email, since many mail clients do not show externally linked images by default (thanks to Miles Moulding for pointing out the value in HTML email). Before you get excited...? For most purposes, Image2HTML is not a practical solution. It was primarily designed just to show it could be done. Here's why it it not usually practical:
Image2HTML is a Cool Computer Trick. Many people are amazed to find that any image can be represented as an HTML table; we feel that Image2HTML's coolness factor is enough to justify its existence. For those wanting to use it for practical purposes, it may be useful in the situations outlined above, provided it is used on simple, small, or blocky images. This page is a good example; because we used only a few small images, and one larger blocky one, the total size of this page is under 20k (and it loads no additional image files). Experiment with the online version to find out more about what it can do.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||