(Quick Reference)
img
Purpose
Renders an HTML <img> tag for a static resource.
This tag uses g:resource to generate the link to the resource, so it is implicitly aware of the Resources plugin.
Examples
Example usages for the "shop" app:
<g:img dir="images" file="logo.png" width="40" height="40"/>
Output: <img src="/shop/images/logo.png" width="40" height="40"/><g:img uri="/images/icons/add.png"/>
Output: <img src="/shop/images/logo.png"/>
Note that if the Resources plugin is installed this will defer to <r:img> which will include any HTML attributes defined in the image's resource definition, if one exists.
Description
Attributes
base (optional) - Sets the prefix to be added to the link target address, typically an absolute server URL. This overrides the behaviour of the absolute property, if both are specified.x≈
contextPath (optional) - the context path to use (relative to the application context path). Defaults to "" or path to the plugin for a plugin view or template.
dir (optional) - the name of the directory within the grails app to link to
file (optional) - the name of the file within the grails app to link to
absolute (optional) - If set to "true" will prefix the link target address with the value of the grails.serverURL property from Config, or http://localhost:<port> if no value in Config and not running in production.
plugin (optional) - The plugin to look for the resource in
uri (optional) - If using the Resources plugin, the uri of the image. A more terse alternative to using the dir/file attributes.
Source
Show Source
def img = { attrs ->
if (!attrs.uri && !attrs.dir) {
attrs.dir = "images"
}
if (resourceService) {
out << r.img(attrs)
} else {
def uri = attrs.uri ?: resource(attrs) def excludes = ['dir', 'uri', 'file', 'plugin']
def entries = attrs.findAll { !(it.key in excludes) }.collect { "$it.key=\"$it.value\""}
out << "<img src=\"${uri.encodeAsHTML()}\" ${entries.join(' ')} />"
}
}