asimagexml(3x)

โœจ asimagexml(3x) โœจ

AfterStep X11 window manager โ€” manual page: asimagexml(3x)

๐Ÿ’– NAME ๐Ÿ’–

asimagexml โ€” XML schema to be used for scripting image manipulation by AfterStep and ascompose libAfterImage/asimagexml

๐ŸŒŸ NAMEascompose ๐ŸŒŸ

ascompose is a tool to compose image(s) and display/save it based on supplied XML input file.

๐Ÿฆ‹ DESCRIPTION ๐Ÿฆ‹

Okay bestie, so ascompose reads supplied XML data, and manipulates image accordingly. It could transform images from files of any supported file format, draw gradients, render antialiased texturized text, perform superimposition of arbitrary number of images, and save images into files of any of supported output file formats.

At any point, the result of any operation could be assigned a name, and later on referenced under this name.

At any point during the script processing, result of any operation could be saved into a file of any supported file types.

Internal image format is 32bit ARGB with 8bit per channel.

Last image referenced, will be displayed in X window, unless -n option is specified. If -r option is specified, then this image will be displayed in root window of X display, effectively setting a background for a desktop. If -o option is specified, this image will also be saved into the file or requested type.

๐ŸŽ€ TAGS ๐ŸŽ€

Here is the list and description of possible XML tags to use in the script :

  • img โ€” load image from the file.
  • recall โ€” recall previously loaded/generated image by its name.
  • text โ€” render text string into new image.
  • save โ€” save an image into the file.
  • bevel โ€” draw solid bevel frame around the image.
  • gradient โ€” render multipoint gradient.
  • mirror โ€” create mirror copy of an image.
  • blur โ€” perform gaussian blur on an image.
  • rotate โ€” rotate/flip image in 90 degree increments.
  • scale โ€” scale an image to arbitrary size.
  • slice โ€” enlarge image to arbitrary size leaving corners unchanged.
  • crop โ€” crop an image to arbitrary size.
  • tile โ€” tile an image to arbitrary size.
  • hsv โ€” adjust Hue, Saturation and Value of an image.
  • pad โ€” pad image with solid color from either or all sides.
  • solid โ€” generate new image of requested size, filled with solid color.
  • composite โ€” superimpose arbitrary number of images using one of 15 available methods.
  • if โ€” conditional processing based on value of the variables
  • set โ€” sets value of the variable
  • printf โ€” formatted printing of the value of the variable

Each tag generates new image as the result of the transformation โ€” existing images are never modified and could be reused as many times as needed. See below for description of each tag.

Whenever numerical values are involved, the basic math ops (add, subtract, multiply, divide), unary minus, and parentheses are supported.

Operator precedence is NOT supported. Percentages are allowed, and apply to either width or height of the appropriate image (usually the refid image).

Also, variables of the form $image.width and $image.height are supported. $image.width is the width of the image with refid "image", and $image.height is the height of the same image. The special $xroot.width and $xroot.height values are defined by the the X root window, if there is one. This allows images to be scaled to the desktop size: <scale width="$xroot.width" height="$xroot.height">.

Each tag is only allowed to return ONE image.


๐Ÿฆ‹ libAfterImage/asimagexml/text ๐Ÿฆ‹

โœจ NAMEtext โœจ

text โ€” render text string into new image, using specific font, size and texture.

๐Ÿ“œ SYNOPSIS

<text id="new_id" font="font" point="size" fgcolor="color"
      bgcolor="color" fgimage="image_id" bgimage="image_id"
      spacing="points" type="3dtype">My Text Here</text>

๐ŸŒˆ ATTRIBUTES

  • id โ€” Optional. Image will be given this name for future reference.
  • font โ€” Optional. Default is "fixed". Font to use for text.
  • point โ€” Optional. Default is 12. Size of text in points.
  • fgcolor โ€” Optional. No default. The text will be drawn in this color.
  • bgcolor โ€” Optional. No default. The area behind the text will be drawn in this color.
  • fgimage โ€” Optional. No default. The text will be textured by this image.
  • bgimage โ€” Optional. No default. The area behind the text will be filled with this image.
  • spacing โ€” Optional. Default 0. Extra pixels to place between each glyph.
  • type โ€” Optional. Default 0. Valid values are from 0 to 7 and each represeend different 3d type.

๐Ÿ’Œ NOTES

<text> without bgcolor, fgcolor, fgimage, or bgimage will NOT produce visible output by itself. See EXAMPLES below.

๐Ÿฆ‹ libAfterImage/asimagexml/composite ๐Ÿฆ‹

โœจ NAMEcomposite โœจ

composite โ€” superimpose arbitrary number of images on top of each other.

๐Ÿ“œ SYNOPSIS

<composite id="new_id" op="op_desc"
           keep-transparency="0|1" merge="0|1">

๐ŸŒˆ ATTRIBUTES

  • id โ€” Optional. Image will be given this name for future reference.
  • op โ€” Optional. Default is "alphablend". The compositing operation. Valid values are the standard AS blending ops: add, alphablend, allanon, colorize, darken, diff, dissipate, hue, lighten, overlay, saturate, screen, sub, tint, value.
  • merge โ€” Optional. Default is "expand". Valid values are "clip" and "expand". Determines whether final image will be expanded to the maximum size of the layers, or clipped to the bottom layer.
  • keep-transparency โ€” Optional. Default is "0". Valid values are "0" and "1". If set to "1", the transparency of the bottom layer will be kept for the final image.

๐Ÿ’Œ NOTES

All images surrounded by this tag will be composited with the given op.

๐ŸŒˆ ATTRIBUTES

All tags surrounded by this tag may have some of the common attributes in addition to their normal ones. Under no circumstances is there a conflict with the normal child attributes:

  • crefid โ€” Optional. An image ID defined with the "id" parameter for any previously created image. If set, percentages in "x" and "y" will be derived from the width and height of the crefid image.
  • x โ€” Optional. Default is 0. Pixel coordinate of left edge.
  • y โ€” Optional. Default is 0. Pixel coordinate of top edge.
  • align โ€” Optional. Alternative to x โ€” allowed values are right, center and left.
  • valign โ€” Optional. Alternative to y โ€” allowed values are top, middle and bottom.
  • clip_x โ€” Optional. Default is 0. X Offset on infinite surface tiled with this image, from which to cut portion of an image to be used in composition.
  • clip_y โ€” Optional. Default is 0. Y Offset on infinite surface tiled with this image, from which to cut portion of an image to be used in composition.
  • clip_width โ€” Optional. Default is image width. Tile image to this width prior to superimposition.
  • clip_height โ€” Optional. Default is image height. Tile image to this height prior to superimposition.
  • tile โ€” Optional. Default is 0. If set will cause image to be tiled across entire composition, unless overridden by clip_width or clip_height.
  • tint โ€” Optional. Additionally tint an image to specified color. Tinting can both lighten and darken an image. Tinting color 0 or #7f7f7f7f yields no tinting. Tinting can be performed on any channel, including alpha channel.

๐Ÿ‘€ SEE ALSO

libAfterImage


๐Ÿฆ‹ libAfterImage/asimagexml/img ๐Ÿฆ‹

โœจ NAMEimg โœจ

img โ€” load image from the file.

๐Ÿ“œ SYNOPSIS

<img id="new_img_id" src="filename"/>

๐ŸŒˆ ATTRIBUTES

  • id โ€” Optional. Image will be given this name for future reference.
  • src โ€” Required. The filename (NOT URL) of the image file to load.

๐Ÿ’Œ NOTES

The special image src "xroot:" will import the background image of the root X window, if any. No attempt will be made to offset this image to fit the location of the resulting window, if one is displayed.


๐Ÿฆ‹ libAfterImage/asimagexml/recall ๐Ÿฆ‹

โœจ NAMErecall โœจ

recall โ€” recall previously generated and named image by its id.

๐Ÿ“œ SYNOPSIS

<recall id="new_id" srcid="image_id" default_src="filename"/>

๐ŸŒˆ ATTRIBUTES

  • id โ€” Optional. Image will be given this name for future reference.
  • srcid โ€” Required. An image ID defined with the "id" parameter for any previously created image.

libAfterImage/asimagexml/release


๐Ÿฆ‹ libAfterImage/asimagexml/release ๐Ÿฆ‹

โœจ NAMErelease โœจ

release โ€” release (destroy if possible) previously generated and named image by its id.

๐Ÿ“œ SYNOPSIS

<release srcid="image_id"/>

๐ŸŒˆ ATTRIBUTES

  • srcid โ€” Required. An image ID defined with the "id" parameter for any previously created image.

libAfterImage/asimagexml/color


๐Ÿฆ‹ libAfterImage/asimagexml/color ๐Ÿฆ‹

โœจ NAMEcolor โœจ

color โ€” defines symbolic name for a color and set of variables.

๐Ÿ“œ SYNOPSIS

<color name="sym_name" domain="var_domain" argb="colorvalue"/>

๐ŸŒˆ ATTRIBUTES

  • name โ€” Symbolic name for the color value, to be used to refer to that color.
  • argb โ€” 8 characters hex definition of the color or other symbolic color name.
  • domain โ€” string to be used to prepend names of defined variables.

๐Ÿ’Œ NOTES

In addition to defining symbolic name for the color this tag will define 7 other variables : domain.sym_name.red, domain.sym_name.green, domain.sym_name.blue, domain.sym_name.alpha, domain.sym_name.hue, domain.sym_name.saturation, domain.sym_name.value

libAfterImage/asimagexml/color2alpha


๐Ÿฆ‹ libAfterImage/asimagexml/color2alpha ๐Ÿฆ‹

โœจ NAMEcolor2alpha โœจ

color2alpha โ€” set alpha channel based on color closeness to specified color

๐Ÿ“œ SYNOPSIS

<color2alpha id="new_id" ref_id="other_imag" width="pixels"
height="pixels"
       clip_x="clip_x" clip_y="clip_y"
       color="color">

๐ŸŒˆ ATTRIBUTES

  • id โ€” Optional. Image will be given this name for future reference.
  • refid โ€” Optional. An image ID defined with the "id" parameter for any previously created image. If set, percentages in "width" and "height" will be derived from the width and height of the refid image.
  • width โ€” Required. The image will be scaled to this width.
  • height โ€” Required. The image will be scaled to this height.
  • clip_x โ€” Optional. Offset into original image.
  • clip_y โ€” Optional. Offset into original image.
  • color โ€” Required. Color to match against.

๐Ÿ’Œ NOTES

This tag applies to the first image contained within the tag. Any further images will be discarded. If you want to keep image proportions while resizing-use "proportional" instead of specific size for particular dimension.

libAfterImage/asimagexml/printf


๐Ÿฆ‹ libAfterImage/asimagexml/printf ๐Ÿฆ‹

โœจ NAMEprintf โœจ

printf โ€” prints variable value to standard output.

๐Ÿ“œ SYNOPSIS

<printf format="format_string" var="variable_name" val="expression"/>

๐ŸŒˆ ATTRIBUTES

  • format_string โ€” Standard C format string with exactly 1 placeholder.
  • var โ€” Name of the variable, which value will be printed.
  • val โ€” math expression to be printed.

๐Ÿ’Œ NOTES ๐Ÿ’Œ

libAfterImage/asimagexml/set

๐ŸŽ€ NAMEset ๐ŸŽ€

Ok bestie, this tag declares a variable and assigns it a numeric value from an expression. Periodt. ๐Ÿ’…

โœจ SYNOPSIS โœจ

       <set var="variable_name" domain="var_domain" val="expression"/>

๐Ÿ’… ATTRIBUTES ๐Ÿ’…

  • var โ€” Name of the variable, which value will be set. (literally the variable whose value is gonna be set)
  • val โ€” math expression to be evaluated.
  • domain โ€” (optional) variable's domain to be prepended to its name using format var_domain.variable_name

Next up: libAfterImage/asimagexml/if โ€” no cap, go look. ๐Ÿ’–


๐ŸŒˆ NAMEif ๐ŸŒˆ

This one evaluates a logical expression, and if the result is not true (or false if you're using the <unless> tag), it handles all the tags inside. It's giving conditional energy. โœจ

โœจ SYNOPSIS โœจ

       <if val1="expression" [op="gt|lt|ge|le|eq|ne" val2="expression"]/>
           [<then>...</then><else>...</else>] </if> <unless val1="expression"
       [op="gt|lt|ge|le|eq|ne" val2="expression"]/>

๐Ÿ’… ATTRIBUTES ๐Ÿ’…

  • val1 โ€” math expression to be evaluated.
  • val2 โ€” math expression to be evaluated.
  • op โ€” (optional) comparison op to be applied to values. The ops are gt, lt, ge, le, eq, ne.

๐Ÿ“ EXAMPLE ๐Ÿ“

       <if val1="$ascs.Base.value" val2="50"
       op="gt"><then>...</then><else>...</else></if>

Then libAfterImage/asimagexml/gradient ๐Ÿ’–


๐Ÿฆ‹ NAMEgradient ๐Ÿฆ‹

Renders a multipoint gradient. Ate. ๐ŸŒˆ

โœจ SYNOPSIS โœจ

       <gradient id="new_id" angle="degrees"
                 refid="refid" width="pixels" height="pixels"
                 colors ="color1 color2 color3 [...]"
                 offsets="fraction1 fraction2 fraction3 [...]"/>

๐Ÿ’… ATTRIBUTES ๐Ÿ’…

  • id โ€” Optional. Image will be given this name for future reference.
  • refid โ€” Optional. An image ID defined with the "id" parameter for any previously created image. If set, percentages in "width" and "height" will be derived from the width and height of the refid image.
  • width โ€” Optional. The result will have this width.
  • height โ€” Optional. The result will have this height.
  • colors โ€” Required! Whitespace-separated list of colors. At least two colors are required. Each color in this list will be visited in turn, at the intervals given by the offsets attribute.
  • offsets โ€” Optional. Whitespace-separated list of floating point values ranging from 0.0 to 1.0. The colors from the colors attribute are given these offsets, and the final gradient is rendered from the combination of the two. If both colors and offsets are given but the number of colors and offsets do not match, the minimum of the two will be used, and the other will be truncated to match. If offsets are not given, a smooth stepping from 0.0 to 1.0 will be used.
  • angle โ€” Optional. Given in degrees. Default is 0. This is the direction of the gradient. Currently the only supported values are 0, 45, 90, 135, 180, 225, 270, 315. 0 means left to right, 90 means top to bottom, etc.

Then libAfterImage/asimagexml/solid ๐Ÿ’–


๐ŸŽจ NAMEsolid ๐ŸŽจ

Generates an image of specified size and fills it with a solid color. Clean, simple, iconic. ๐ŸŽ€

โœจ SYNOPSIS โœจ

       <solid id="new_id" color="color" opacity="opacity"
           width="pixels" height="pixels"
           refid="refid" width="pixels" height="pixels"/>

๐Ÿ’… ATTRIBUTES ๐Ÿ’…

  • id โ€” Optional. Image will be given this name for future reference.
  • width โ€” Optional. The result will have this width.
  • height โ€” Optional. The result will have this height.
  • refid โ€” Optional. An image ID defined with the "id" parameter for any previously created image. If set, percentages in "width" and "height" will be derived from the width and height of the refid image.
  • color โ€” Optional. Default is "#ffffffff". An image will be created and filled with this color.
  • width โ€” Required. The image will have this width.
  • height โ€” Required. The image will have this height.
  • opacity โ€” Optional. Default is 100. Values from 0 to 100 represent the opacity of resulting image with 100 being completely opaque. Effectively overrides alpha component of the color setting.

Then libAfterImage/asimagexml/save ๐Ÿ’–


๐Ÿ’พ NAMEsave ๐Ÿ’พ

Writes a generated or loaded image into a file of one of the supported types. Main character energy for saving your faves. ๐Ÿ”ฅ

โœจ SYNOPSIS โœจ

       <save id="new_id" dst="filename" format="format" compress="value"
             opacity="value" replace="0|1" delay="mlsecs">

๐Ÿ’… ATTRIBUTES ๐Ÿ’…

  • id โ€” Optional. Image will be given this name for future reference.
  • dst โ€” Optional. Name of file image will be saved to. If omitted image will be dumped into stdout - useful for CGI apps.
  • format โ€” Optional. Output format of saved image. Defaults to the extension of the "dst" parameter. Valid values are the standard AS image file formats: xpm, jpg, png, gif, tiff.
  • compress โ€” Optional. Compression level if supported by output file format. Valid values are in range of 0 - 100 and any of "deflate", "jpeg", "ojpeg", "packbits" for TIFF files. Note that JPEG and GIF will produce images with deteriorated quality when compress is greater then 0. For JPEG default is 25, for PNG default is 6 and for GIF it is 0.
  • opacity โ€” Optional. Level below which pixel is considered to be transparent, while saving image as XPM or GIF. Valid values are in range 0-255. Default is 127.
  • replace โ€” Optional. Causes ascompose to delete file if the file with the same name already exists. Valid values are 0 and 1. Default is 1 - files are deleted before being saved. Disable this to get multimage animated gifs.
  • delay โ€” Optional. Delay to be stored in GIF image. This could be used to create animated gifs. Note that you have to set replace="0" and then write several images into the GIF file with the same name.

๐Ÿ“ NOTES ๐Ÿ“

This tag applies to the first image contained within the tag. Any further images will be discarded.

Then libAfterImage/asimagexml/background ๐Ÿ’–


๐ŸŽจ NAMEbackground ๐ŸŽจ

Sets the image's background color. The vibe is: fill in those missing pixels. ๐Ÿ–Œ๏ธ

โœจ SYNOPSIS โœจ

        <background id="new_id" color="color">

๐Ÿ’… ATTRIBUTES ๐Ÿ’…

  • id โ€” Optional. Image will be given this name for future reference.
  • color โ€” Required. Color to be used for background - fills all the spaces in image with missing pixels.

๐Ÿ“ NOTES ๐Ÿ“

This tag applies to the first image contained within the tag. Any further images will be discarded.

Then libAfterImage/asimagexml/blur ๐Ÿ’–


๐ŸŒซ๏ธ NAMEblur ๐ŸŒซ๏ธ

Performs a gaussian blurr on an image. Soft focus, no cap. โœจ

โœจ SYNOPSIS โœจ

       <blur id="new_id" horz="radius" vert="radius" channels="argb">

๐Ÿ’… ATTRIBUTES ๐Ÿ’…

  • id โ€” Optional. Image will be given this name for future reference.
  • horz โ€” Optional. Horizontal radius of the blur in pixels.
  • vert โ€” Optional. Vertical radius of the blur in pixels.
  • channels โ€” Optional. Applys blur only on listed color channels: a - alpha, r - red, g - green, b - blue

๐Ÿ“ NOTES ๐Ÿ“

This tag applies to the first image contained within the tag. Any further images will be discarded.

Then libAfterImage/asimagexml/bevel ๐Ÿ’–


๐Ÿ–ผ๏ธ NAMEbevel ๐Ÿ–ผ๏ธ

Draws a solid bevel frame around the image. Giving 3D edges, slay. ๐Ÿ’…

โœจ SYNOPSIS โœจ

       <bevel id="new_id" colors="color1 color2"
                 width="pixels" height="pixels" refid="refid"
              border="left top right bottom" solid=0|1 outline=0|1>

๐Ÿ’… ATTRIBUTES ๐Ÿ’…

  • id โ€” Optional. Image will be given this name for future reference.
  • colors โ€” Optional. Whitespace-separated list of colors. Exactly two colors are required. Default is "#ffdddddd #ff555555". The first color is the color of the upper and left edges, and the second is the color of the lower and right edges.
  • borders โ€” Optional. Whitespace-separated list of integer values. Default is "10 10 10 10". The values represent the offsets toward the center of the image of each border: left, top, right, bottom.
  • solid โ€” Optional - default is 1. If set to 0 will draw bevel gradually fading into the image.
  • outline โ€” Optional - default is 0. If set to 1 will draw bevel around the image vs. inside the image.
  • width โ€” Optional. The result will have this width.
  • height โ€” Optional. The result will have this height.
  • refid โ€” Optional. An image ID defined with the "id" parameter for any previously created image. If set, percentages in "width" and "height" will be derived from the width and height of the refid image.

๐Ÿ“ NOTES ๐Ÿ“

This tag applies to the first image contained within the tag. Any further images will be discarded.

Then libAfterImage/asimagexml/mirror ๐Ÿ’–


๐Ÿชž NAMEmirror ๐Ÿชž

Creates a new image as a mirror copy of an old one. It's giving reflection realness. ๐ŸŒธ

โœจ SYNOPSIS โœจ

        <mirror id="new_id" dir="direction"
                   width="pixels" height="pixels" refid="refid">

๐Ÿ’… ATTRIBUTES ๐Ÿ’…

  • id โ€” Optional. Image will be given this name for future reference.
  • dir โ€” Required. Possible values are "vertical" and "horizontal". The image will be flipped over the x-axis if dir is vertical, and flipped over the y-axis if dir is horizontal.
  • width โ€” Optional. The result will have this width.
  • height โ€” Optional. The result will have this height.
  • refid โ€” Optional. An image ID defined with the "id" parameter for any previously created image. If set, percentages in "width" and "height" will be derived from the width and height of the refid image.

๐Ÿ“ NOTES ๐Ÿ“

This tag applies to the first image contained within the tag. Any further images will be discarded.

Then libAfterImage/asimagexml/rotate ๐Ÿ’–


๐Ÿ”„ NAMErotate ๐Ÿ”„

Rotate an image in 90 degree increments (flip). The manpage got a little merge situation here, but we're keeping it 100% as is:

โœจ SYNOPSIS โœจ

        <rotate id="new_id" angle="degrees"
                   width="pixels" height="pixels" refid="refid"> * ATTRIBUTES
       id       Optional. Image will be given this name for future reference.
       angle    Required.  Given in degrees.  Possible values are currently
                "90", "180", and "270".  Rotates the image through the given
                angle.  width    Optional.  The result will have this width.
       height   Optional.  The result will have this height.  refid
       Optional.  An image ID defined with the "id" parameter for
                any previously created image.  If set, percentages in "width"
                and "height" will be derived from the width and height of the
                refid image.

๐Ÿ“ NOTES ๐Ÿ“

This tag applies to the first image contained within the tag. Any further images will be discarded.

Then libAfterImage/asimagexml/scale ๐Ÿ’–


๐Ÿ“ NAMEscale ๐Ÿ“

Scale image to arbitrary size. Flexible fr fr. โœจ

โœจ SYNOPSIS โœจ

       <scale id="new_id" refid="other_imag" src_x="pixels"  src_y="pixels"
              src_width="pixels" src_height="pixels"
              width="pixels" height="pixels">

okay so, quick vibe check on the attribute bag for that <scale> fella we just met โœจ

  • id โ€” Optional. We name the image this so we can summon it later by name. future reference tingz ๐Ÿ’…
  • refid โ€” Optional. This is the <id>-style name of some image we already made. If you set it, any percentages you drop into width and height get calculated off that refid image's actual width and height. sneaky but iconic ๐Ÿฆ‹
  • width โ€” Required. Scale the image to this width. no skipping, bestie.
  • height โ€” Required. Scale the image to this height. also mandatory, also slay.
  • src_x โ€” Optional. Default is 0. This is the X offset on the infinite surface tiled with this image, and it's where we cut the chunk out of that we're gonna scale. ๐Ÿ”ช
  • src_y โ€” Optional. Default is 0. Same deal but Y. vertical cut energy.
  • src_width โ€” Optional. Default is image width. Tile the image out to this width before scaling it. ๐ŸŒธ
  • src_height โ€” Optional. Default is image height. Tile to this height pre-scaling. ๐Ÿ’œ

๐Ÿ’ญ NOTES

This tag applies to the first image contained within the tag. Any further images will be discarded. (one image per tag, that's the rule, don't fight it ๐Ÿ˜ญ)

If you want to keep image proportions while scaling โ€” use "proportional" instead of a specific size for a particular dimension. that's the whole tea. ๐Ÿต

and then the page just kinda points you onward at:

libAfterImage/asimagexml/slice

๐Ÿ‘‘ NAME โ€” slice

slice image to arbitrary size leaving corners unchanged ๐ŸŽ€

โœจ SYNOPSIS โœจ

<slice id="new_id" ref_id="other_imag" width="pixels" height="pixels"
       x_start="slice_x_start" x_end="slice_x_end"
          y_start="slice_y_start" y_end="slice_y_end"
          scale="0|1">

๐Ÿ’… ATTRIBUTES

  • id โ€” Optional. Image will be given this name for future reference. ๐ŸŒˆ
  • refid โ€” Optional. An image ID defined with the "id" parameter for any previously created image. If set, percentages in width and height will be derived from the width and height of the refid image.
  • width โ€” Required. The image will be scaled to this width.
  • height โ€” Required. The image will be scaled to this height.
  • x_start โ€” Optional. Position at which vertical image slicing begins. Corresponds to the right side of the left corners. ๐Ÿ“
  • x_end โ€” Optional. Position at which vertical image slicing end. Corresponds to the left side of the right corners.
  • y_start โ€” Optional. Position at which horisontal image slicing begins. Corresponds to the bottom side of the top corners.
  • y_end โ€” Optional. Position at which horisontal image slicing end. Corresponds to the top side of the bottom corners.
  • scale โ€” Optional. If set to 1 will cause middle portion of the image to be scaled instead of tiled. ๐Ÿ”ฅ

๐ŸŒธ NOTES

This tag applies to the first image contained within the tag. Any further images will be discarded. ๐Ÿ™ˆ

Contents of the image between x_start and x_end will be tiled horizontally. Contents of the image between y_start and y_end will be tiled vertically.

This is useful to get background images to fit the size of the text or a widget, while preserving its borders undistorted โ€” which is the usuall result of simple scaling. (yes bestie, corners stay crispy. that's the whole point.)

If you want to keep image proportions while resizing โ€” use "proportional" instead of specific size for particular dimension. ๐Ÿซถ

libAfterImage/asimagexml/pixelize

๐Ÿ’– NAME โ€” pixelize

pixelize image using arbitrary pixel size ๐ŸŒˆ

โœจ SYNOPSIS โœจ

<pixelize id="new_id" ref_id="other_imag" width="pixels" height="pixels"
       clip_x="clip_x" clip_y="clip_y"
       pixel_width="pixel_width" pixel_height="pixel_height">

๐Ÿ’… ATTRIBUTES

  • id โ€” Optional. Image will be given this name for future reference.
  • refid โ€” Optional. An image ID defined with the "id" parameter for any previously created image. If set, percentages in width and height will be derived from the width and height of the refid image.
  • width โ€” Required. The image will be scaled to this width.
  • height โ€” Required. The image will be scaled to this height.
  • clip_x โ€” Optional. Offset into original image. ๐Ÿ“
  • clip_y โ€” Optional. Offset into original image.
  • pixel_width โ€” Required. Horizontal pixelization step; ๐ŸŸช
  • pixel_height โ€” Required. Vertical pixelization step;

๐Ÿ’ญ NOTES

This tag applies to the first image contained within the tag. Any further images will be discarded. โœจ

If you want to keep image proportions while resizing โ€” use "proportional" instead of specific size for particular dimension.

libAfterImage/asimagexml/crop

๐Ÿฆ‹ NAME โ€” crop

crop image to arbitrary area within it. โœ‚๏ธ

โœจ SYNOPSIS โœจ

 <crop id="new_id" refid="other_image" srcx="pixels" srcy="pixels"
       width="pixels" height="pixels" tint="color">

๐Ÿ’… ATTRIBUTES

  • id โ€” Optional. Image will be given this name for future reference.
  • refid โ€” Optional. An image ID defined with the "id" parameter for any previously created image. If set, percentages in width and height will be derived from the width and height of the refid image.
  • srcx โ€” Optional. Default is "0". Skip this many pixels from the left. ๐Ÿ‘ˆ
  • srcy โ€” Optional. Default is "0". Skip this many pixels from the top. ๐Ÿ‘†
  • width โ€” Optional. Default is "100%". Keep this many pixels wide.
  • height โ€” Optional. Default is "100%". Keep this many pixels tall.
  • tint โ€” Optional. Additionally tint an image to specified color. Tinting can both lighten and darken an image. Tinting color 0 or #7f7f7f7f yields no tinting. Tinting can be performed on any channel, including alpha channel. ๐ŸŽจ

๐ŸŒธ NOTES

This tag applies to the first image contained within the tag. Any further images will be discarded. one and done, periodt. ๐Ÿ’…

libAfterImage/asimagexml/tile

๐ŸŽ€ NAME โ€” tile

tile an image to specified area. ๐Ÿ”

โœจ SYNOPSIS โœจ

 <tile id="new_id" refid="other_image" width="pixels" height="pixels"
       x_origin="pixels" y_origin="pixels" tint="color" complement=0|1>

๐Ÿ’… ATTRIBUTES

  • id โ€” Optional. Image will be given this name for future reference.
  • refid โ€” Optional. An image ID defined with the "id" parameter for any previously created image. If set, percentages in width and height will be derived from the width and height of the refid image.
  • width โ€” Optional. Default is "100%". The image will be tiled to this width.
  • height โ€” Optional. Default is "100%". The image will be tiled to this height.
  • x_origin โ€” Optional. Horizontal position on infinite surface, covered with tiles of the image, from which to cut out resulting image. ๐Ÿงš
  • y_origin โ€” Optional. Vertical position on infinite surface, covered with tiles of the image, from which to cut out resulting image.
  • tint โ€” Optional. Additionally tint an image to specified color. Tinting can both lighten and darken an image. Tinting color 0 or #7f7f7f7f yields no tinting. Tinting can be performed on any channel, including alpha channel. ๐ŸŽจ
  • complement โ€” Optional. Will use color that is the complement to tint color for the tinting, if set to 1. Default is 0. ๐ŸŒˆ

๐Ÿ’ญ NOTES

This tag applies to the first image contained within the tag. Any further images will be discarded.

libAfterImage/asimagexml/hsv

๐Ÿ’œ NAME โ€” hsv

adjust Hue, Saturation and/or Value of an image and optionally tile an image to arbitrary area. ๐ŸŒˆโœจ

โœจ SYNOPSIS โœจ

<hsv id="new_id" refid="other_image"
     x_origin="pixels" y_origin="pixels" width="pixels" height="pixels"
     affected_hue="degrees|color" affected_radius="degrees"
     hue_offset="degrees" saturation_offset="value"
     value_offset="value">

๐Ÿ’… ATTRIBUTES

  • id โ€” Optional. Image will be given this name for future reference.
  • refid โ€” Optional. An image ID defined with the "id" parameter for any previously created image. If set, percentages in width and height will be derived from the width and height of the refid image.
  • width โ€” Optional. Default is "100%". The image will be tiled to this width.
  • height โ€” Optional. Default is "100%". The image will be tiled to this height.
  • x_origin โ€” Optional. Horizontal position on infinite surface, covered with tiles of the image, from which to cut out resulting image. ๐Ÿ“
  • y_origin โ€” Optional. Vertical position on infinite surface, covered with tiles of the image, from which to cut out resulting image.
  • affected_hue โ€” Optional. Limits effects to the renage of hues around this hue. If numeric value is specified โ€” it is treated as degrees on a 360 degree circle, with: red = 0, yellow = 60, green = 120, cyan = 180, blue = 240, magenta = 300. If colorname or value preceded with # is specified here โ€” it will be treated as RGB color and converted into hue automagically. ๐Ÿช„
  • affected_radius โ€” Optional. Value in degrees to be used in order to calculate the range of affected hues. Range is determined by subtracting and adding this value from/to affected_hue. ๐Ÿ”ฎ
  • hue_offset โ€” Optional. Value by which to adjust the hue.
  • saturation_offset โ€” Optional. Value by which to adjust the saturation.
  • value_offset โ€” Optional. Value by which to adjust the value.

๐ŸŒธ NOTES

One of the Offsets must be not 0, in order for operation to be performed. (like, actually do something bestie, zero offsets = nothing happens ๐Ÿ˜ญ)

This tag applies to the first image contained within the tag. Any further images will be discarded.

libAfterImage/asimagexml/pad

๐ŸŒธ NAME โ€” pad

pad an image with solid color rectangles. ๐Ÿงฑ

โœจ SYNOPSIS โœจ

<pad id="new_id" left="pixels" top="pixels"
     right="pixels" bottom="pixels" color="color"
        refid="refid" width="pixels" height="pixels">

๐Ÿ’… ATTRIBUTES

  • id โ€” Optional. Image will be given this name for future reference.
  • width โ€” Optional. The result will have this width.
  • height โ€” Optional. The result will have this height.
  • refid โ€” Optional. An image ID defined with the "id" parameter for any previously created image. If set, percentages in width and height will be derived from the width and height of the refid image.
  • left โ€” Optional. Size to add to the left of the image. โฌ…๏ธ
  • top โ€” Optional. Size to add to the top of the image. โฌ†๏ธ
  • right โ€” Optional. Size to add to the right of the image. โžก๏ธ
  • bottom โ€” Optional. Size to add to the bottom of the image. โฌ‡๏ธ
  • color โ€” Optional. Color value to fill added areas with. It could be transparent of course. Default is #FF000000 โ€” totally black. ๐Ÿ–ค

๐Ÿ’ญ NOTES

This tag applies to the first image contained within the tag. Any further images will be discarded. โœจ


and that's the whole page, bestie, we made it to the end of the <asimagexml> lore ๐Ÿซถ the footer credits the 3rd Berkeley Distribution, AfterStep v.2.2.12, and it's the asimagexml(3x) manual page โ€” go forth and make your images absolutely iconic, no cap ๐Ÿ’…๐Ÿ’–๐ŸŽ€

๐Ÿ“ฆ where this page comes from