Manipulates and converts images between different image
formats. Provides the tag <cimg> that makes it is
possible to convert, resize, crop and in other ways transform
images. It is possible to pass attributes, such as the alt attribute,
to the resulting tag by including them in the cimg tag.
- src="url"
-
The path to the indata file.
<cimg src='/internal-roxen-testimage'/> |
|
- filename="string"
-
Append the filename value to the path. Recommended is not to append file suffix
to the filename since there are settings for handling that automatically through
this module settings.
This is useful if you want to have images indexed, since many search engines
uses the filename as a description of the image.
<cimg-url src='/internal-roxen-testimage' filename='Roxen Test Image'/> |
/_internal/cimg/d0hu9i0wpdc97chmslse4fkmtzc3enl/Roxen%20Test%20Image |
- data="imagedata"
-
Insert images from other sources, e.g. databases through entities or
variables.
<emit source='sql' query='select imagedata from images where id=37'>
<cimg data='&sql.imagedata:none;'/>
</emit> |
- process-all-layers
-
Set this flag to make all image layers
visible regardless of their original state.
- include-layers="layer-glob-list"
-
Comma-separated list
of glob expressions which is matched against layer names. All matching
layers are made visible regardless of their original state.
- exclude-layers="layer-glob-list"
-
Comma-separated list
of glob expressions which is matched against layer names. All matching
layers are hidden regardless of their original state.
- exclude-invisible-layers
-
Set this flag to
automatically exclude layers that are not shown in the original
image. This is only useful in combination with the
'process-all-layers' attribute.
Timeout
The generated image will by default never expire, but
in some circumstances it may be pertinent to limit the
time the image and its associated data is kept. Its
possible to set an (advisory) timeout on the image data
using the following attributes.
- unix-time="number"
-
Set the base expiry time to this absolute time.
If left out, the other attributes are relative to current time.
- years="number"
-
Add this number of years to the time this entry is valid.
- months="number"
-
Add this number of months to the time this entry is valid.
- weeks="number"
-
Add this number of weeks to the time this entry is valid.
- days="number"
-
Add this number of days to the time this entry is valid.
- hours="number"
-
Add this number of hours to the time this entry is valid.
- beats="number"
-
Add this number of beats to the time this entry is valid.
- minutes="number"
-
Add this number of minutes to the time this entry is valid.
- seconds="number"
-
Add this number of seconds to the time this entry is valid.
- format="{gif, jpeg, png, avs, bmp, hrz, ilbm, pcx, pnm, ps, pvr, tga, tiff, wbf, webp, xbm, xpm}" (png)
-
The format to encode the image to. The formats available are:
Acronym | Acronym interpretation |
gif
|
Graphics Interchange Format (might be missing in your roxen)
|
jpeg
|
Joint Photography Expert Group image compression
|
png
|
Portable Networks Graphics
|
avs
|
Advanced Visual Systems Inc. image format
|
bmp
|
Windows BitMaP file
|
hrz
|
HRZ is (was?) used for amatuer radio slow-scan TV.
|
ilbm
|
Interchangeable File Format: interleaved bitmap
|
pcx
|
Zsoft PCX file format (PC / DOS)
|
pnm
|
Portable AnyMap
|
ps
|
Adobe PostScript file
|
pvr
|
Pover VR (dreamcast image)
|
tga
|
TrueVision Targa (PC / DOS)
|
tiff
|
Tag Image File Format
|
wbf
|
WAP Bitmap File
|
webp
|
WebP image format currently developed by Google.
|
xbm
|
XWindows Bitmap File
|
xpm
|
XWindows Pixmap File
|
<cimg src='/internal-roxen-testimage' format='png'/> |
|
<cimg src='/internal-roxen-testimage' format='gif'/> |
|
- quant="number" (format dependant)
-
The number of colors to quantizize the image to.
Default for gif is 32(+1 transparent), for most other formats
(except black and white) is it unlimited.
<cimg src='/internal-roxen-testimage' quant='2'/> |
|
- dither="{none, random, floyd-steinberg}" (none)
-
Choose the dithering method.
Method | Meaning |
none
|
No dithering is performed at all.
|
random
|
Random scatter dither. Not visually pleasing, but it is useful for very high resolution printing.
|
floyd-steinberg
|
Error diffusion dithering. Usually the best dithering method.
|
<cimg src='/internal-roxen-testimage' dither='random' quant='10'/> |
|
<cimg src='/internal-roxen-testimage' dither='floyd-steinberg' quant='10'/> |
|
- true-alpha
-
If present, render a real alpha channel instead of on/off alpha. If
the file format only supports on/off alpha, the alpha channel is
dithered using a floyd-steinberg dither.
<cimg src='/internal-roxen-testimage' opaque-value='20'/> |
|
<cimg src='/internal-roxen-testimage' opaque-value='20' true-alpha='1'/> |
|
- background-color="color" (taken from the page)
-
The color to render the image against.
<cimg src='/internal-roxen-testimage' background-color='red' opaque-value='50'/> |
|
- opaque-value="percentage" (100)
-
The transparency value to use, 100 is fully opaque, and 0 is fully
transparent.
- cs-rgb-hsv="{0, 1}" (0)
-
Perform rgb to hsv colorspace conversion.
<cimg src='/internal-roxen-testimage' cs-rgb-hsv='1'/> |
|
- gamma="number" (1.0)
-
Perform gamma adjustment.
<cimg src='/internal-roxen-testimage' gamma='0.5'/> |
|
<cimg src='/internal-roxen-testimage' gamma='1.5'/> |
|
- cs-grey="{0, 1}" (0)
-
Perform rgb to greyscale colorspace conversion.
<cimg src='/internal-roxen-testimage' cs-grey='1'/> |
|
- cs-invert="{0, 1}" (0)
-
Invert all colors
<cimg src='/internal-roxen-testimage' cs-invert='1'/> |
|
- cs-hsv-rgb="{0, 1}" (0)
-
Perform hsv to rgb colorspace conversion.
<cimg src='/internal-roxen-testimage' cs-hsv-rgb='1'/> |
|
- rotate-cw="degree" (0)
-
Rotate the image clock-wise.
<cimg src='/internal-roxen-testimage' rotate-cw='20'/> |
|
- rotate-ccw="degree" (0)
-
Rotate the image counter clock-wise.
- rotate-unit="{rad, deg, ndeg, part}" (deg)
-
Select the unit to use while rotating.
Unit | Meaning |
rad
|
Radians
|
deg
|
Degrees
|
ndeg
|
'New' degrees (400 for each full rotation)
|
part
|
0 - 1.0 (1.0 == full rotation)
|
- mirror-x="{0, 1}" (0)
-
Mirror the image around the X-axis.
- mirror-y="{0, 1}" (0)
-
Mirror the image around the Y-axis.
- scale="fact" (1.0)
-
Scale fact times. (0.5 -> half size, 2.0 -> double size)
<cimg src='/internal-roxen-testimage' scale='0.5'/> |
|
- scale="x,y"
-
Scale to the exact size x,y. If either of X or Y is zero, the image
is scaled to the specified width or hight, and the value that is zero
is scaled in proportion to the other value.
<cimg src='/internal-roxen-testimage' scale='20,50'/> |
|
- max-width="xsize"
-
If width is larger than 'xsize', scale width to 'xsize' while
keeping aspect.
- max-height="ysize"
-
If height is larger than 'ysize', scale height to 'ysize' while
keeping aspect.
- span-width="xsize"
-
If width is larger than 'xsize', scale width to 'xsize' while
keeping aspect. If width is smaller than 'xsize', extend width
to 'xsize' by filling the new space with current background color.
<cimg src='/internal-roxen-testimage' span-width="350" background-color='white'/> |
|
- span-height="ysize"
-
If height is larger than 'ysize', scale height to 'ysize' while
keeping aspect. If height is smaller than 'ysize', extend height
to 'ysize' by filling the new space with current background color.
<cimg src='/internal-roxen-testimage' span-height="350" background-color='white'/> |
|
- x-offset="pixels" (0)
-
Cut n pixels from the beginning of the X scale.
<cimg src='/internal-roxen-testimage' x-offset='100'/> |
|
- y-offset="pixels" (0)
-
Cut n pixels from the beginning of the Y scale.
- x-size="pixels" (whole image)
-
Keep n pixels from the beginning of the X scale.
<cimg src='/internal-roxen-testimage' x-size='100'/> |
|
- y-size="pixels" (whole image)
-
Keep n pixels from the beginning of the Y scale.
- crop="{x1,y1-x2,y2, auto, guides-cross, guides-region}"
-
Crops the image by using several differen methods. The simplest is to only
specify the area to be cropped with x,y-x,y coordinates. By instead
selecting "auto" the image will be cropped so that as many pixels as possible
with the same color is removed from around the image.
A more advanced cropping method can be used by giving the crop argument
"guides-cross". The image will then be cropped around the intersection of
two guides inside the image. Guides can be added to e.g. Photoshop and
GIMP images. If several guides are present, which ones to use can be
selected with the guides-index=x,y attribute, where x and y is the number
of the guides. Guides cross cropping is usefull together with max-width
and max-height attributes when creating thumb nails.
A combination of guides cross cropping can be used by giving the crop
argument "guides-region". In this cropping mode the area enclosed by
two horizontal and two vertical guides are saved. Which guides to use
is given by the guides-index=x1,y1-x2,y2 attribute, where the x and y
parameters are the number of the guides. Guides can also be specified as
guides-index=x,y. Then the saved area will be the one enclosed by the
buides x,y and x+1,y+1, counting from left and top. Again, combine max-width
and max-height makes a good effect, since scaling is performed after cropping.
<cimg src='/internal-roxen-testimage' crop='50,28-150,92'/> |
|
- jpeg-quality="percentage" (75)
-
Set the quality on the output jpeg image.
<cimg src='/internal-roxen-testimage' format='jpeg' jpeg-quality='30'/> |
|
<cimg src='/internal-roxen-testimage' format='jpeg' jpeg-quality='1'/> |
|
- jpeg-optimize="{0, 1}" (1)
-
If 0, do not generate optimal tables. Somewhat faster, but produces
bigger files.
- jpeg-progressive=="{0, 1}" (0)
-
Generate progressive jpeg images.
- jpeg-smooth="0-100" (0)
-
Smooth the image while compressing it. This produces smaller files,
but might undo the effects of dithering.
- bmp-bpp="1,4,8,24" (24)
-
Force this number of bits per pixel for bmp images.
- bmp-windows="{0, 1}" (1)
-
Windows or OS/2 mode, default is 1. (windows mode)
- bmp-rle="{0, 1}" (0)
-
RLE 'compress' the BMP image.
- gd-alpha_index="color" (0)
-
Color in the colormap to make transparent for GD-images with alpha
channel.
- pcx-raw="{1, 0}" (0)
-
If 1, do not RLE encode the PCX image.
- pcx-dpy="0-10000000.0" (75.0)
-
Resolution, in pixels per inch.
- pcx-xdpy="0-10000000.0" (75.0)
-
Resolution, in pixels per inch.
- pcx-ydpy="0-10000000.0" (75.0)
-
Resolution, in pixels per inch.
- pcx-xoffset="0-imagexsize-2" (0)
-
Offset from start of image data to image content for PCX images.
Unused by most programs.
- pcx-yoffset="0-imageysize-2" (0)
-
Offset from start of image data to image content for PCX images.
Unused by most programs.
- tga-raw="{1, 0}" (0)
-
If 1, do not RLE encode the Targa image.
- ps-dpi="0-10000000.0" (75.0)
-
Dots per inch for the resulting postscript file.