Render Formatting#

Render formatting is simply the modification of a primary render output. This is provided via:

The following constitute render formatting:

Padding#

This adds whitespace around a primary render output. The amount of whitespace added is determined by two values (with respect to the rendered size):

If the padding width or height is less than or equal to the width or height of the primary render output, then the padding has no effect on the corresponding axis.

Alignment#

This determines the position of a primary render output within it’s Padding. The position is determined by two values:

Transparency#

This determines how transparent pixels are rendered. Transparent pixels can be rendered in one of the following ways:

Render Format Specification#

[ <h_align> ]  [ <width> ]  [ . [ <v_align> ] [ <height> ] ]  [ # [ <threshold> | <bgcolor> ] ]  [ + <style> ]

Note

  • spaces are only for clarity and not included in the syntax

  • <...> is a placeholder for a single field

  • | implies mutual exclusivity

  • fields within [ ] are optional

  • fields within { } are required, though subject to any enclosing [ ]

  • if the . is present, then at least one of v_align and height must be present

  • h_alignhorizontal alignment

    • < → left

    • | → center

    • > → right

    • default → center

  • widthpadding width

  • v_alignvertical alignment

    • ^ → top

    • - → middle

    • _ → bottom

    • default → middle

  • heightpadding height

  • # → transparency setting

    • default: transparency is enabled with the default alpha threshold

    • thresholdalpha threshold

      • a float value in the range 0.0 <= threshold < 1.0 (but starting with the . (decimal point))

      • applies to only Text-based Render Styles

      • e.g .0, .325043, .999

    • bgcolor → background underlay color

      • # → the terminal emulator’s default background color (or black, if undetermined), OR

      • a hex color e.g ffffff, 7faa52

    • if neither threshold nor bgcolor is present, but # is present, transparency is disabled i.e alpha channel is ignored

  • style → style-specific format specifier

    See each render style in Image Classes for its own specification, if it defines.

    style can be broken down into [ <parent> ] [ <current> ], where current is the spec defined by a render style and parent is the spec defined by a parent of that render style. parent can in turn be recursively broken down as such.

See also

Formatted rendering tutorial.