Extension:ImageMap

The ImageMap extension allows clickable image maps.

An image map is a list of coordinates in a specific image, which hyperlinks areas of the image to multiple destinations (in contrast to a normal image link, in which the entire area of the image links to a single destination).

For example, a map of the world may have each country hyperlinked to further information about that country.

The intention of an image map is to provide an easy way of linking various parts of an image without dividing the image into separate image files.

Simple example without caption


The above example always links to the Main Page, no matter where you click on it. To find out more about the image, click on the blue "i" icon. An alternative way to create such a linked image, without using this extension would be with

Complex example with caption
The above example links to many different pages, depending on where you click it. To find out more about the image, click on the double-rectangle icon.

Syntax description
The contents of an  tag consists of blank lines, comments (starting with #) and logical lines. The first logical line specifies the image to be displayed. This must be in the same format as an ordinary MediaWiki image link (see Images help), except without the enclosing  and   markup. If the first line specifies a " " or " " image, then the first line's caption and any alt parameter are treated as the image's caption and alt text in the usual way; otherwise, the first line's alt parameter (or, if absent, any caption) specifies the image's alt text. In neither case does the image itself have title text (often used for tooltips); any title text is taken from the regions described in later lines.

Further lines are split into tokens, separated by whitespace. The function of each line is determined by the first token in the line.

A coordinate consists of two tokens. The first token is the horizontal (X) position and the second token is the vertical (Y) position. All coordinates are according to the full-size image, not the visible image. The X and Y tokens should be specified as distance from left edge (horizontal pixel count) and distance from top (vertical pixel count) of the full-size image.


 * desc : Specifies the location of a blue "i" icon [[Image:Desc-20.png|link=|alt=]], which links to the image description. Possible values: top-right, bottom-right (default), bottom-left, top-left, none. This parameter is ignored for " " or " " images, which instead employ the usual double-rectangle icon [[Image:Magnify-clip.png|link=|alt=]].


 * poly: A polygon. The coordinates of the vertices are given, followed by a link in square brackets.


 * rect : A rectangle. The parameters are the coordinates of the top-left and bottom-right corners, followed by a title to link to in square brackets.
 * Example


 * circle: A circle. The first two parameters are the coordinates of the center, the third is the radius. The coordinates are followed by a link in square brackets.


 * default: This gives the default link, where no other regions are specified.

All coordinates are specified relative to the source image. The image can be scaled using thumbnail syntax, in which case the image map coordinates will be automatically scaled as well.

All links are given in either the form Page title or description. In the latter case, the part after the pipe "|" becomes the title attribute of the link—in most browsers, it will pop up as a tooltip when the user hovers over it; the part after the pipe also becomes the alt text for the link. If no explicit link description is given, the page title is used.

Areas which overlap give precedence to the first link listed.

Installation
Make sure that uploads and ImageMagick are installed:

$wgEnableUploads = true; $wgUseImageMagick = true; $wgImageMagickConvertCommand = "/usr/bin/convert";


 * Troubleshooting
 * 1) Check to see if your php DOM is turned on. You may need to install it if it is not.
 * 2) Check whether  is installed, since this extension relies on /usr/bin/convert for the resizing. If it is not present, you could get a page with only XML errors (tip: use the back-button in the browser, because you can still edit the page).

Composer
You can also install this extension using built-in Composer support.

composer require mediawiki/image-map @dev

Usage with templates, magic words, or parser functions.
If you want this extension (as with most tag extensions) to parse template parameters, magic words, or parser functions, you will need to use #tag syntax, such as w:Template:Click did. In this case the vertical bar  must be replaced by a template , where the source text of the template is   (except when they appear inside links or parameters).


 * Example - standard form:


 * Example - with variable :


 * Example – Modified to accept an input parameter to control image size:

These modifications allow the template size to be adjusted on the edited (target) page and eliminate the need to create duplicate templates of various image sizes.

Where is the input parameter “1” and a default image size of 640px. Note: the input parameter requires a text string ending with “px” to function properly. For example, calling a template will display the template at 400 pixels.

To convert the standard (existing) image maps to this optional format:
 * Replace the initial   with  }}  (the trailing braces).