dot pictureservices picturedot picturesupport picture
dot picturecontact picturedot pictureabout picture
dot picturehome picture





Today's Discussion
Create New Topic
List by Topic


Excite Search
Atomz Search:

Advanced Atomz

Implementing Imagemaps

Imagemaps allow the user to click on predefined sections of a graphic picture on your page and have the server respond as if they clicked on a text hyperlink.

FrontPage users:
If you have the FrontPage extensions installed in your account, you do not need to worry about client-side or server-side imagemaps. FrontPage does everything for you. FrontPage has a built-in imagemap editor which you can use to map out your 'hot spots' and it automatically generates client-side and server-side code for you.

Client-side Imagemaps (recommended method)

Client-side imagemaps do not require the presence of a server-side script in order to interpret the coordinates of the "hot" regions of your multi-clickable image. The client-side imagemap is much more efficient than the server-side imagemap and it allows the visitor to see the actual URL associated with the mapped regions in the status bar of their web browser.

  1. Download a mapping program to create a map file based on the desired image. The map file will contain the coordinates of each clickable region. We recommend MapEdit (PC) and WebMap(Mac), but other imagemapping tools may alsobe available.
  2. Map out the hotspots using one of these programs and select the map file format "Client-side imagemap" as opposed to NCSA or CERN (for server-side maps) prior to saving the file.

    Here is a sample client-side map file created using MapEdit:

    <map name="sample">
    <area shape="rect" coords="20,27,82,111" href="hotspot1.html">
    <area shape="circle" coords="129,113,29" href="hotspot2.html">
    <area shape="rect" coords="21,158,170,211" href="">
    <area shape="default" nohref>

  3. Include the map file code within the desired HTML document and reference it like so:

    <img border="0" src="image.gif" usemap="#sample">

    Substitute the name of the desired image above and note the relationship between the HTML tag, <map name="sample"> and the usemap="#sample" attribute above. You can test your new client-side imagemap offline if the links refer to files on your local PC.

Server-side Imagemaps on UNIX

Server-side imagemaps are less efficient and less user friendly than client-side imagemaps, but they are more widely supported, especially with older browsers.

We use the Apache built-in imagemap processor, mod_imap, to process imagemap requests. mod_imap gives you the same basic functionality as either /cgi-bin/imagemap or /cgi-bin/htimage, but allows simpler HTML coding, runs faster, and has a variety of additional functions that you can use, including text menu generation for text-only browsers.

To implement mod_imap imagemap functionality, you need to perform two steps. First you need to create your imagemap file in NCSA format using an imagemapping tool such as MapEdit (PC) and WebMap (Mac).

# sample NCSA map file
rect /sales/index.html 5,11 20,32
poly /about/company.html 40,36 80,34 75,40 40,70
circle /contact.html#jeff 120,88 130,102
default /index.html

Then you need to reference your map file from its corresponding image in your HTML like this:

<A HREF="/somepath/">
<IMG border="0" SRC="someimage.gif" ISMAP></A>

Full details of the format as used by mod_imap can be found at: The file format information is in the second half of the page; the first half deals primarily with .htaccess options for text menu generation and other advanced features. You can ignore that information if you don't plan to use those features.

Converting from /cgi-bin/imagemap to mod_imap:

If you're currently using /cgi-bin/imagemap, it is easy to switch to mod_imap. If your HTML looks like this:

<A HREF="/cgi-bin/imagemap/somepath/">
<IMG border="0" SRC="someimage.gif" ISMAP>

Just change it to:

<A HREF="/somepath/">
<IMG border="0" SRC="someimage.gif" ISMAP>

And you're done. Notice that all you're doing is removing the '/cgi-bin/imagemap' part. mod_imap and /cgi-bin/imagemap both use the NCSA imagemap format, so no other changes are needed.

Converting from /cgi-bin/htimage to mod_imap:

If you're currently using /cgi-bin/htimage, you'll make a similar change, i.e.:

<A HREF="/cgi-bin/htimage/somepath/">
<IMG border="0" SRC="someimage.gif" ISMAP>


<A HREF="/somepath/">
<IMG border="0" SRC="someimage.gif" ISMAP>

The htimage program uses the CERN imagemap format, so you must also convert your mapfiles to NCSA format. If you're using a graphical imagemap editor, most allow you to "Save As" either format, so you should be able to just load your files and resave them under NCSA format. If your editor doesn't support NCSA, or you are creating your mapfiles manually, you must make the changes yourself.

A simple example comparing the CERN and NCSA formats can be found at: 
Prev | Next | Implementing Imagemaps

A metaphor. A philosophy. A way of doing business.

Copyright 1997-2001 - Last update: Wednesday, March 21, 2001 at 2:03:25 PM