Help:Images

This page explains the image syntax when editing the wiki.

You or another user must usually managing>Special:MyLanguage/Help:Managing files|upload an image before you can use it on a page.

Images that are stored on a MediaWiki server are usually rendered by using the   namespace prefix (but the legacy   namespace prefix is still supported as a synonym) as the target of a MediaWiki link.

The alternate   namespace prefix is also usable to reference the original media file content (for rendering or downloading it separately, out of any MediaWiki page).

Supported media types for images
The following file formats are supported by default:


 * .jpg or .jpeg : bitmap image compressed in the standard JPEG format (this lossy format is most suitable for photographs).


 * .png : bitmap image in the Portable Network Graphics format (specified by the W3 Consortium).


 * .gif : bitmap image in the legacy Graphics Interchange Format.

Other formats used on Wikimedia, and commonly enabled elsewhere (these may require extra set-up beyond what is enabled by default):


 * .svg : scalable image in the Scalable Vector Graphics format (specified by the W3 Consortium). See man>Special:MyLanguage/Manual:Image Administration#SVG|Manual:Image Administration#SVG.


 * .tiff : Tagged image format. Often used for high-resolution archival photographs.  Often used with .


 * .ogg, .oga, .ogv : Ogg multimedia (audio or video). Not an image format, but treated similarly.  Often used with 


 * .pdf : multipaged documents in the Portable Document Format (initially specified by Adobe). Often used in conjunction with 


 * .djvu : multipaged bitmap documents in the DejaVu format (most often, scans of books). See 


 * Only a single page of a .pdf or .djvu file is shown at one time.

Other media types may be supported, but it may not be possible to display them inline.

Syntax
The full syntax for displaying an image is:

where options can be zero or more of the following, separated by pipes (|):


 * 1>#Format</>|Format option: one of border and/or frameless, frame, thumb (or thumbnail);


 * Controls how the rendered image is formatted and embedded in the rest of the page.


 * 1>#Size and frame</>|Resizing option: one of


 * {width}px — Resizes the image to fit within the given maximum width in pixels, without restricting its height;


 * x{height}px — Resizes the image to fit within the given maximum height in pixels, without restricting its width;


 * {width}x{height}px — Resizes the image to fit within the given width and height in pixels;


 * upright — Resizes an image to fit within reasonable dimensions, according to user preferences (suitable for images whose height is larger than width).


 * Note that the image will always retain its aspect ratio, and can only be reduced (not increased) in size unless it's in a scalable media type (bitmap images cannot be scaled up).


 * The default maximum size depends on the format and the internal image dimensions (according to its media type).


 * 1>#Horizontal alignment</>|Horizontal alignment option: one of left, right, center, none;


 * Controls the horizontal alignment (and inline/block or floating styles) of the image within a text (no default value).


 * 1>#Vertical alignment</>|Vertical alignment option: one of baseline, sub, super, top, text-top, middle, bottom, text-bottom;


 * Controls the vertical alignment of a non-floating inline image with the text before or after the image, and in the same block (the default vertical alignment is middle).


 * 1>#Altering the default link target</>|Link option: one of


 * link={target} — Allows to change the target (to an arbitrary page title, or URL) of the generated link, activable on the rendered image surface; e.g. <tvar|code> </> renders as <tvar|code2>Example.jpg</> (external link), or <tvar|code3> </> renders as <tvar|code4>Example.jpg</> (internal link).


 * link= (with an empty value) —  Displays an image without any activable link; e.g. <tvar|code1> </> renders as <tvar|code2>Example.jpg</>.


 * ! for MW 1.24 and lower: If you set  (empty), then no   will be rendered. (See T23454.)


 * Other specific options:


 * alt={alternative text} — Defines the alternative text (maps to the HTML attribute   of the generated   element) of an image that will be rendered if either the referenced image cannot be downloaded and embedded, or if the support media must use the alternative description text (e.g. when using a Braille reader or with accessibility options set by the user in its browser).


 * page={number} — Renders the specified page number (currently only applicable when showing a .djvu or .pdf file).


 * class={html class} — (MediaWiki 1.20+) Defines classes (maps to the HTML attribute  of the generated   element).


 * lang={language code} — (MediaWiki 1.22+) For SVG files containing &lt;switch&gt; statements varying on a systemLanguage attribute, selects what language to render the file in. The default is always English, even on non-English wikis.

If a parameter does not match any of the other possibilities, it is assumed to be the caption text.

Caption text shows below the image in thumb and frame formats, or as tooltip text in any other format.

Caption text displayed in the thumb and frame formats may contain wiki links and other formatting.

MediaWiki extensions can add additional options.

If 'alt' is not specified and a caption is provided, the alternative text will be created automatically from the caption, stripped of formatting.

Format
The following table shows the effect of all available formats.

When the height of an image in thumbnail is bigger than its width (i.e. in portrait orientation rather than landscape) and you find it too large, you may try the option, where N is the image's aspect ratio (its width divided by its height, defaulting to 0.75).

The alternative is to specify the desired maximum height (in pixels) explicitly.

Note that by writing, you can use a different image for the thumbnail.

Size and frame
Among different formats, the effect of the size parameter may be different, as shown below.


 * For how it appears when its size is not specified, see 1>#Format</>|Format section above.


 * When the format is not specified, or only ed, the size can be both reduced and enlarged to any specified size.


 * In the examples below, the original size of the image is 400 × 267 pixels.


 * An image with  always ignores the size specification, the original image will be reduced if it exceeds the maximum size defined in user preferences.


 * The size of an image with  can be reduced, but can not be enlarged beyond the original size of the image.

Horizontal alignment
Note that when using the  or   formats, the default horizontal alignment will be.

Vertical alignment
The vertical alignment options take effect only if the image is rendered as an inline element and is not floating.

They alter the way the inlined image will be vertically aligned with the text present in the same block before and/or after this image on the same rendered row.

Note that the rendered line of text where inline images are inserted (and the lines of text rendered after the current one) may be moved down (this will increase the line-height conditionally by additional line spacing, just as it may occur with spans of text with variable font sizes, or with superscripts and subscripts) to allow the image height to be fully displayed with this alignment constraint.



To show the alignment result more clearly, the text spans are overlined and underlined, the font-size is increased to 200%, and the paragraph block is outlined with a thin border; additionally images of different sizes are aligned:

<p style="border:1px solid #AAA;padding:0;font-size:150%;line-height:2"> text top: text

<p style="border:1px solid #AAA;padding:0;font-size:150%;line-height:2"> text text-top: text

<p style="border:1px solid #AAA;padding:0;font-size:150%;line-height:2"> text super: text

<p style="border:1px solid #AAA;padding:0;font-size:150%;line-height:2"> text baseline: text

<p style="border:1px solid #AAA;padding:0;font-size:150%;line-height:2"> text sub: text

<p style="border:1px solid #AAA;padding:0;font-size:150%;line-height:2"> text default: text

<p style="border:1px solid #AAA;padding:0;font-size:150%;line-height:2"> text middle: text

<p style="border:1px solid #AAA;padding:0;font-size:150%;line-height:2"> text text-bottom: text

<p style="border:1px solid #AAA;padding:0;font-size:150%;line-height:2"> text bottom: text

Notes:


 * 1) The "middle" vertical alignment position of the image (which is also the default) usually refers to the middle between the x-height and the baseline of the text (on which the vertical middle of the image will be aligned, and on which usually the text may be overstroke), but not to the middle of the line-height of the font-height that refers to the space between the "text-top" and "text-bottom" positions ; the font-height excludes:


 * 1) * the additional line separation spacing normally divided equally into two line-margins (here 0.5em, according to line-height set to 200%) above and below the font-height).


 * 1) * the additional line spacing which may be added by superscripts and subscripts.


 * 1) However, if the image height causes its top or bottom position to go above or below the normal full line-height of text, the middle position will be adjusted after the increasing the top and/or bottom line-margins so that the image can fit and align properly, and all images (including those with smaller heights) will be vertically centered on the adjusted middle position (for computing the effective line-height, the text of each rendered row with the larger font-height will be considered).


 * 1) The "text-top" and "text-bottom" alignment positions also excludes the extra line spacing added by superscripts and subscripts, but not the additional line-spacing defined by the line-height.


 * 1) The "top" and "bottom" alignment positions take into account all these extra line spacings (including superscripts and subscripts, if they are present in a rendered line span).  When the image alignment constrains the image to grow above or below the normal line-spacing, and the image is not absolutely positioned, the image will cause the "top" and "bottom" positions to be adjusted (just like superscripts and subscripts), so the effective line-height between rendered lines of text will be higher.


 * 1) The "underline", "overline" and "overstrike" text-decoration positions should be somewhere within these two limits and may depend on the type and height of fonts used (the superscript and subscript styles may be taken into account in some browsers, but usually these styles are ignored and the position of these decorations may not be adjusted); so these decorations normally don't affect the vertical position of images, relatively to the text.

Stopping the text flow
On occasion it is desirable to stop text (or other inline non-floating images) from flowing around a floating image.

Depending on the web browser's screen resolution and such, text flow on the right side of an image may cause a section header (for instance, == My Header == ) to appear to the right of the image, instead of below it, as a user may expect.

The text flow can be stopped by placing <tvar|code1> </> (or if you prefer, <tvar|code2>  </>) before the text that should start below the floating image.

(This may also be done without an empty line by wrapping the section with the floating images with <tvar|code> … </>, which clears all floats inside the   element.)

All images rendered as blocks (including non-floating centered images, left- or right-floating images, as well as framed or thumbnailed floating images) are implicitly breaking the surrounding lines of text (terminating the current block of text before the image, and creating a new paragraph for the text after them).

They will then stack vertically along their left or right alignment margin (or along the center line between these margins for centered images).

Altering the default link target
The following table shows how to alter the link target (whose default is the image description page) or how to remove it.

Changing the link does not alter the format described in the previous sections.

 Warning :
 * The licencing requirements on your wiki may not allow you to remove all links to the description page that displays the required authors attributions, the copyrights statements, the applicable licencing terms, or a more complete description of the rendered image (including its history of modifications).
 * If you change or remove the target link of an image, you will then have to provide somewhere else on your page an explicit link to this description page, or to display the copyright and author statement and a link to the applicable licence, if they are different from the elements applicable to the embedding page itself.
 * Your wiki policy may restrict the use of the alternate link parameter, or may even enforce a prohibition of alternate link parameters for embedded media files (in which case, the link parameter will be ignored), or may only accept them after validation by authorized users or administrators.

Gallery syntax
It's easy to make a gallery of thumbnails with the <tvar|gallery> </> tag.

The syntax is:

Mode parameter
Starting in 1.22 we have an experimental <tvar|mode> </> parameter, taking options as follows:


 * <tvar|traditional> </> is the original gallery type used by MediaWiki.


 * <tvar|nolines> </> is similar to <tvar|traditional> </>, but with no border lines.


 * <tvar|packed> </> causes images to have the same height but different widths, with little space between the images. The rows in this responsive mode organize themselves according to the width of the screen.


 * <tvar|overlay> </> shows the caption overlaid on the image, in a semi-transparent white box.


 * <tvar|hover> </> is similar to <tvar|overlay> </>, but with the caption and box only showing up on hover.
 * <tvar|slideshow> </> creates a slideshow of the images.

For example:

Gives (mode: <tvar|hover><tt>packed-hover</tt></>):

Optional gallery attributes
The gallery tag itself takes several additional parameters, specified as attribute name-value pairs:

Row of images that will wrap to browser width
One way that works for a row of images with varying widths is not to use "thumb" or "left" or "none".

If "thumb" is not used (and thus no captions) a row of images will wrap to the browser width.

If necessary, narrow the browser window to see the images wrap to the next row.





To wrap images of varying widths with captions it is necessary to use div HTML for an unordered list. Along with. For more info and ideas see: Give Floats the Flick in CSS Layouts.

<ul> <li style="display: inline-block;"> </li> <li style="display: inline-block;"> </li> <li style="display: inline-block;"> </li> <li style="display: inline-block;"> </li> <li style="display: inline-block;"> </li> <li style="display: inline-block;"> </li> <li style="display: inline-block;"> </li> <li style="display: inline-block;"> </li> </ul>

Some wiki farms do not have all gallery options (such as "widths").

Also, sometimes one wants varying widths for images in a row.

Outside of a gallery, or the div HTML, it is impossible to have individual captions for images in a row of images that will wrap to the browser width.

Try it and see. Nothing else using wikitext works correctly. Images will either overlap stuff on the right, or force a horizontal scroll bar.

Using a left float ("left") for some images, combined with "none" for some of the images, will not work consistently either, especially if there is also a right sidebar of images.

Weird things will occur.

At narrower browser or screen widths an image out of the row may appear far down the page after the end of the right sidebar of images.

Link behavior
By default an image links to its file description page.

The "link=" option modifies this behavior to link to another page or website, or to turn off the image's linking behavior.

Alternatively, you can create a text link to a file description page or to the file itself.

See <tvar|1></>.

Display image, link it to another page or website
Use "link=" option to link image to another page or website:

Clicking on the below image will take you to MediaWiki:





Clicking on the below image will take you to example.com:





Display image, turn off link
Use "link=" option with no value assigned to turn link off entirely; the below image is not a link:





Link to an image
Add <tvar|colon> </> as a prefix to the link you need to create.

File:Wiki.png File:Wiki.png Wiki Wiki

Requisites
Before using images in your page, the system administrator of your wiki must have uploads>Special:MyLanguage/Manual:Configuring file uploads</>|enabled file uploads and a user has to managing>Special:MyLanguage/Help:Managing files</>|upload the file.

System administrators may also set the wiki to accept files from image>Special:MyLanguage/Manual:Image Administration#Foreign Repositories</>|foreign repositories, such as the [<tvar|url>http://commons.wikimedia.org/wiki/Main_Page</> Wikimedia Commons].

For server side image resizing it is necessary to have a scaler configured (such as GD2, ImageMagick, etc.).

Files at other websites
You can link to an external file available online using the same syntax used for linking to an external web page.

With these syntaxes, the image will not be rendered, but only the text of the link to this image will be displayed.



Or with a different displayed text:

link text here

Additional MediaWiki markup or HTML/CSS formatting (for inline elements) is permitted in this displayed text (with the exception of embedded links that would break the surrounding link): [http://www.example.com/some/image.png Example  rich   link text  here. ] which renders as: [http://www.example.com/some/image.png Example  rich   link text  here. ]

If it is enabled on your wiki (see <tvar|AllowExternalImages></>), you can also embed external images. To do that, simply insert the image's url: http://url.for/some/image.png

Currently, embedded images cannot be resized, but they may be formatted by surrounding MediaWiki markup or HTML/CSS code.

If this wiki option is not enabled, the image will not be embedded but rendered as a textual link to the external site, just like above.