deflfo(3G)
deflfo - defines a raster font capable of accommodating large rasters and multi-byte character id's
As shipped in IRIX 6.5.5. Unchanged since IRIX 6.5.
NAME deflfo - defines a raster font capable of accommodating large rasters and multi-byte character id's FORTRAN 77 SPECIFICATION subroutine deflfo(n, nc, chars, nr, raster) integer*4 n, ht, nc, nr integer*4 chars(5*nc), raster(nr) PARAMETERS n expects the value to use as the identifier for this raster font. The default font is a fixed-pitch ASCII font with a height of 15, width of 9, character values 0 through 127 defined, and is specified by a font identifier of 0. Font 0 cannot be redefined. nc expects the number of elements in the chars array. chars expects an array of 5 by nc four-byte integers. Since parts of certain elements need to be set, declare a ten by nc/2 array of two-byte integers, and then EQUIVALENCE the new array to the chars array. First element of each row expects the integer value for for this character. When this value is encountered by chstr or lcharst this character is drawn. Second element expects the element number of raster at which the bitmap data for this character begins. Element numbers start at zero. Third element, high half-word expects the number of columns in the bitmap that contain set bits (character width). Third element, low half-word expects the number of rows (character height) in the bitmap of the character (including ascender and descender). Fourth element, high half-word expects the number of bitmap columns between the start of the character's bitmap and the start of the character. Fourth element, low half-word expects the number rows between the character's baseline and the bottom of the bitmap. For characters with descenders (e.g., g) this value is a negative number. For characters that rest entirely on the baseline, this value is zero. Fifth element, high half-word expects the number of pixels to move in the x-direction after this character is displayed. Fifth element, low half-word expects the number of pixels to move in the y-direction after this character is displayed. nr expects the number of 16-bit integers in raster. raster expects a one-dimensional array containing all the bitmap data for the characters in the font. The bitmap data for each character is a set of consecutive, 16-bit integers, comprising the bit mask for the character from left to right, bottom to top. For characters of width greater than 16, the rows of a bitmap span more than one array element, however, each new row in the character bitmap must start with its own array element. The number of 16-bit integers per row in a character's bitmap is (w+15)/16. The total number of 16-bit integers in a character's raster definition is h*((w+15)/16). Bit 15 of each element is left-most when displayed. Bits that are '1' are drawn, bits that are '0' are masked. DESCRIPTION deflfo defines a new raster font, or adds/replaces character definitions in the current raster font. If the font did not exist, it is created. If it did exist, the character descriptions in the current call replace any currently defined characters of the same value. deflfo and defras share the same name space for font id's, so programmers should beware of collisions. Also, raster fonts initially defined with defras may not augment their character sets via subsequent calls to deflfo. If deflfo is called with nc set to zero, the font is deleted. SEE ALSO charst, cmove, font, getcpo, getdes, getfon, gethei, lchstr, lstwid, strwid NOTE This routine is available only in immediate mode.