Next: , Previous: , Up: Internal Routines   [Contents][Index]


15.5.79 callig

callig, string [, x, y, size, theta, font, flag] [, /dev, /dvi, /img, /plt, /rim, /rpl]

Plots characters from Hershey vector fonts. The arguments are:

string

The text to be plotted. string may contain special commands. A left-side quote ` introduces TeX-style commands (see below) and a dollar sign $ introduces classic-style commands. The classic-style commands are:

0..9

font change to the specified font. The fonts are: 1-4: roman sans serif, 5: roman bold sans serif, 6: roman bold, 7: greek, 8: italic, 9: symbols.

a a

move up, but keep same size.

e e

move up, scale size by factor 0.7. (exponent)

i i

move down, scale size by factor 0.7. (index)

b b

move down, keep same size

n n

negate combined action of previous a, e, i, and b.

$ > <

draw $, >, or <

s s

save current position

r r

restore saved position

x x

restore entry font

c c

change size to number that follows

* .

draw a star or a bullet

x y

The target coordinates of the lower left-hand point of the text, in the coordinate system determined by the specified keyword. By default, the coordinates are taken to be in pixels (dev) when they are larger than 1, or in device-independent coordinates (dvi) when they are smaller than 1. They default to !xc, !yc (see below).

size

The relative size of the characters. Defaults to !fsize, which defaults to 1.

theta

The angle in degrees with respect to the positive x axis along which the text is plotted. Defaults to 0.

font

The number of the font in which the plotting is started. Defaults to !font which defaults to 6.

flag

a flag that indicates if the pen is down (when flag nonzero) or up (when flag is zero). If the pen is up then nothing is plotted, though the pen position variables !xc and !yc are updated (see below).

a number of TeX-style commands are supported, including:

Greek lower-case letters:

`alpha `beta `chi `delta `epsilon `eta `gamma `iota `kappa `lambda `mu `nu `omega `omicron `phi `psi `rho `sigma `tau `theta `upsilon `xi `zeta.

Greek upper-case letters:

(all of them, even those that are equal to certain Roman letters and therefore not separately available in TeX): `Alpha `Beta `Chi `Delta `Epsilon `Eta `Gamma `Iota `Kappa `Lambda `Mu `Nu `Omega `Omicron `Phi `Psi `Rho `Sigma `Tau `Theta `Upsilon `Xi `Zeta.

Font & size selection:

`bf for a bold roman font (font 5), `it for a bold italic font (font 8), `rm for a roman font (font 6), and `sf for a roman sans serif font (font 1). `size (non-TeX) introduces a new font size (measured by an integer or floating-point number relative to the entry font). According to the usual TeX standards, the following argument must be enclosed in curly braces {} if it has more than a single digit.

Various mathematical symbols:

`cap: the set union symbol; `cup: the set intersection symbol; `exists: the existence indicator; `ge: the "greater than or equal" symbol; `in: the is-element-of symbol; `int: the integration sign; `le: the "less than or equal to" symbol; `nabla: the nabla symbol; `oint: the closed integration sign; `partial: the partial differentiation symbol; `perp: the perpendicular sign; `pm: the plus-minus sign; `propto: the proportional-to sign; `sim: the similar-to symbol; `subset: the is-subset-of symbol; `supset: the is-superset-of symbol; `surd: the square-root symbol; `times: the multiplication symbol.

Arrows:

`downarrow; `leftarrow; `rightarrow; `uparrow.

Miscellaneous symbols:

`box: (non-TeX) a box; `clubsuit: the clubs card suit symbol; `dag: the dagger symbol; `ddag: the double dagger symbol; `diamondsuit: the diamonds card suit symbol; `heartsuit: the hearts card suit symbol; `odot: the astronomical Sun symbol (a dot in a circle); `spadesuit: the spade card suit symbol.

In addition, TeX math-mode superscripting (introduced by ^), subscripting (introduced by _) and brace-enclosed grouping ({}) to indicate the scope of super- or subscripts are supported. Grouping to delimit the influence of font or size changes is not supported! In this routine, there is no separate TeX-style "math mode": all of these TeX-style commands are available all the time.

For example, the following two strings yield an alpha with 2 sigma for superscript, followed by the "is-a-member-of" sign, followed by an italic q: '$7a$E$X2$7r$N$9e$8Q' using the short notation, and '`alpha^{2`sigma}`in`it{q}' using TeX-style notation.

The coordinate system for x and y is chosen as described at Screen Coordinates.

The following system variable influence or are influenced by calls to callig:

!xc, !yc

After the call, !xc and !yc contain the coordinates of the point just after the last drawn character.

!cratio

The characters are drawn in device-independent coordinates, which means they will look squashed if the display is not square. You may tweak this using !cratio, an extra scaling factor for the characters’ y size.

!fsize

The relative size of the characters, if size is not specified.

!font

The entry font of the characters, if font is not specified.

Alias: c

See also: !cratio, !font, !fsize, !height, !iorder, !mxb, !mxt, !myb, !myt, Screen Coordinates, !tvix, !tvixb, !tviy, !tviyb, !width, !wxb, !wxt, !wyb, !wyt, !xc, !yc, Plots, Screen Coordinates


Next: , Previous: , Up: Internal Routines   [Contents][Index]