# 39.7. fm — Font Manager interface¶

Obsolète depuis la version 2.6: The fm module has been removed in Python 3.

This module provides access to the IRIS Font Manager library. It is available only on Silicon Graphics machines. See also: 4Sight User’s Guide, section 1, chapter 5: « Using the IRIS Font Manager. »

This is not yet a full interface to the IRIS Font Manager. Among the unsupported features are: matrix operations; cache operations; character operations (use string operations instead); some details of font info; individual glyph metrics; and printer matching.

It supports the following operations:

fm.init()

Initialization function. Calls fminit(). It is normally not necessary to call this function, since it is called automatically the first time the fm module is imported.

fm.findfont(fontname)

Return a font handle object. Calls fmfindfont(fontname).

fm.enumerate()

Returns a list of available font names. This is an interface to fmenumerate().

fm.prstr(string)

Render a string using the current font (see the setfont() font handle method below). Calls fmprstr(string).

fm.setpath(string)

Sets the font search path. Calls fmsetpath(string). (XXX Does not work!?!)

fm.fontpath()

Returns the current font search path.

Font handle objects support the following operations:

font handle.scalefont(factor)

Returns a handle for a scaled version of this font. Calls fmscalefont(fh, factor).

font handle.setfont()

Makes this font the current font. Note: the effect is undone silently when the font handle object is deleted. Calls fmsetfont(fh).

font handle.getfontname()

Returns this font’s name. Calls fmgetfontname(fh).

font handle.getcomment()

Returns the comment string associated with this font. Raises an exception if there is none. Calls fmgetcomment(fh).

font handle.getfontinfo()

Returns a tuple giving some pertinent data about this font. This is an interface to fmgetfontinfo(). The returned tuple contains the following numbers: (printermatched, fixed_width, xorig, yorig, xsize, ysize, height, nglyphs).

font handle.getstrwidth(string)

Returns the width, in pixels, of string when drawn in this font. Calls fmgetstrwidth(fh, string).