Table of Contents
Image Map Plugin
Compatible with DokuWiki
Binky, Elenor Of Tsort
This extension has not been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues.
An image map is a graphical object where portions of the image act as links. With this plugin, you can not only create an image map, but also an alternate representation that can be used by non-visual browsers.
Installation
Search and install the plugin using the Extension Manager. Refer to Plugins on how to install plugins manually.
After installing, you must refresh the style cache. Go to the Configuration Manager and press “save” so DokuWiki will rebuild the CSS.
Changes
- Update Test syntax (2022-11-22 09:41)
- Version upped (2020-06-16 08:06)
- Use parent div for resize (2020-06-16 08:03)
- Update Script so resizing works again. (2020-06-16 07:49)
- Update Script (2020-06-16 07:49)
- Wrap old API for backward compatibility (2020-06-12 15:18)
- Version upped (2020-06-12 14:29)
- Use specific version of phpunit for testing (2020-06-12 14:26)
Usage and Syntax
{{map>media_link|Alternate Text}} Type normal wiki markup here. Links will be automatically detected and used in the image map. [[wikipage|Description @ 10,12,40,30]] [[wp>image_map|An interwiki link @ 110,50,40]] [[http://w3c.org/|{{w3c_logo.png|Even image links work @10,115,80,95,150,115,80,135}}]] {{<map}}
This example will display the image media_link
. (if the browser is capable of it.) There will be three links in the image:
- A link to the wiki page
wikipage
in a rectangle. - An interwiki link in a circle.
- An external link in a polygon. The link is defined with an image, so the alternate text of the image is used for the map.
For a link to be used in the map, it must define the shape as part of the link text. This is done with the @
character followed by a list of coordinates. The number of coordinates determines the shape of the link.
# | shape | coordinates |
---|---|---|
3 | circle | center-x,center-y,radius |
4 | rectangle | left,top,right,bottom |
6+ | polygon | x1,y1,x2,y2,x3,y3… |
If the label does not contain a suitable shape description, then that link will be ignored for the map. The coordinates will be removed from the link tag, in both the image map and the alternate markup.
The wiki markup inside the map block will be generated but not displayed in most browsers. If using an image map is not desirable, however, the browser can hide the image and display the alternate markup. The plugin is already configured for the braille
, aural
, and tty
CSS media types.
Note: As with any media link, you may want to include the leading colon when defining the image
{{map>:media_link|Alternate Text}}
to avoid unexpected behavior particularly when using namespaces.
FAQ
Is there a way to avoid the rendering of the links additionally below the map?
The plugin includes CSS rules that will hide the text links in desktop browsers. If the styles have not been updated, then you will see the links in addition to the image map. You need to reset the cache on the server (go to the configuration admin page and click “save”) and in your browser cache (hold the Shift key while you click “Refresh”).
Bugs
Responsive images should adjust the map coordinates if Javascript is enabled. The older plugin would not work properly when the image was resized.
For me, the buttons have a text in German instead of Dutch, which I would prefer. Is this a translation error or is it only available in German?
The button text is only in the German language for us as well. I love German, but I would like to change it to English if at all possible. Can we do this? Thanks! — Courtland 2017/10/5 04:44
Seeimagemap/script.js
lines # 29 and 30.
+ unescape("<button onClick=\"imagemap.writeOutput();document.getElementById('imagemap_light').style.display='none';document.getElementById('imagemap_fade').style.display='none';\">Uebernehmen</button><br />") + unescape("<button onClick=\"document.getElementById('imagemap_light').style.display='none';document.getElementById('imagemap_fade').style.display='none';\">Abbrechen</button><br />")
Third Party Plugin
Combo
To be able to work with the combo plugin, the links should be on a new line (not in a list). More combo imagemapping support