OpenSCAD User Manual/WIP/Text Metrics

textmetrics
returns information about the size and positioning that would be applied to text if laid out as specified by its arguments.

Parameters

The parameters to  are exactly the same as the parameters to.

Return value

The return value from textmetrics is an object with these properties:

an [x,y] pair giving the lower left corner of the smallest box that would completely surround the text.

an [x,y] pair giving the size of that box.

the vertical distance (normally positive) from the baseline of the text to the highest point in the text.

the vertical distance (normally zero or negative) from the baseline of the text to the lowest point in the text.

an [x,y] pair giving the distance from the origin to the starting point of the baseline of the text. This value is normally [0,0] but can be non-zero when using non-default alignments.

an [x,y] pair giving the distance from the starting point for this text to the starting point for a subsequent piece of text. Informally, it says how far the pen should be moved before starting the next piece of text. This value is directly helpful only with default alignments - horizontal text aligned left/baseline and vertical text aligned center/top.

Note: as with any array, you can use an object-like ".x" or ".y" to refer to the two entries in [x,y] pairs. Thus you can refer to either obj.size[0] or obj.size.x to get the X dimension of the text.



Sample output (reformatted for readability):

ECHO: { position = [2.2784, -5.7728]; size = [87.0362, 24.8832]; ascent = 19.1104; descent = -5.7728; offset = [0, 0]; advance = [89.5186, 0]; } Example

fontmetrics
returns information about the specified font and size.

The arguments to fontmetrics are the size and font name.

Parameters

the font size the font name

Return value

The return value from  is an object with these properties:

an object with ascent and descent properties describing the "usual" ascent and descent of the font. For most fonts, this will be the ascent of upper-case letters and the descent of lower-case letters with descenders.

an object with ascent and descent properties describing the maximum ascent and descent of the font.

gives, as a positive number, the designed inter-line spacing for the font.

an object with members family and style that gives the name and style of the selected font. These may not be the same as the name supplied, if the specified font is not available, or if a generic name like "sans" or "serif" is specified, or if only a style is specified.