Home | All Classes | Main Classes | Annotated | Grouped Classes | Functions |

# QFontDatabase Class Reference

The QFontDatabase class provides information about the fonts available in the underlying window system. More...

`#include <qfontdatabase.h>`

List of all member functions.

## Public Members

- QFontDatabase ()
- QStringList families () const
- QStringList styles ( const QString & family ) const
- QValueList<int> pointSizes ( const QString & family, const QString & style = QString::null )
- QValueList<int> smoothSizes ( const QString & family, const QString & style )
- QString styleString ( const QFont & f )
- QFont font ( const QString & family, const QString & style, int pointSize )
- bool isBitmapScalable ( const QString & family, const QString & style = QString::null ) const
- bool isSmoothlyScalable ( const QString & family, const QString & style = QString::null ) const
- bool isScalable ( const QString & family, const QString & style = QString::null ) const
- bool isFixedPitch ( const QString & family, const QString & style = QString::null ) const
- bool italic ( const QString & family, const QString & style ) const
- bool bold ( const QString & family, const QString & style ) const
- int weight ( const QString & family, const QString & style ) const
- QStringList families ( bool ) const (obsolete)
- QStringList styles ( const QString & family, const QString & ) const (obsolete)
- QValueList<int> pointSizes ( const QString & family, const QString & style, const QString & ) (obsolete)
- QValueList<int> smoothSizes ( const QString & family, const QString & style, const QString & ) (obsolete)
- QFont font ( const QString & familyName, const QString & style, int pointSize, const QString & ) (obsolete)
- bool isBitmapScalable ( const QString & family, const QString & style, const QString & ) const (obsolete)
- bool isSmoothlyScalable ( const QString & family, const QString & style, const QString & ) const (obsolete)
- bool isScalable ( const QString & family, const QString & style, const QString & ) const (obsolete)
- bool isFixedPitch ( const QString & family, const QString & style, const QString & ) const (obsolete)
- bool italic ( const QString & family, const QString & style, const QString & ) const (obsolete)
- bool bold ( const QString & family, const QString & style, const QString & ) const (obsolete)
- int weight ( const QString & family, const QString & style, const QString & ) const (obsolete)

## Static Public Members

- QValueList<int> standardSizes ()
- QString scriptName ( QFont::Script script )
- QString scriptSample ( QFont::Script script )

## Detailed Description

The QFontDatabase class provides information about the fonts available in the underlying window system.

The most common uses of this class are to query the database for the list of font families() and the pointSizes() and styles() that are available for each family. An alternative to pointSizes() is smoothSizes() which returns the sizes at which a given family and style will look attractive.

If the font family is available from two or more foundries the foundry name is included in the family name, e.g. "Helvetica [Adobe]" and "Helvetica [Cronyx]". When you specify a family you can either use the hyphenated "foundry-family" format, e.g. "Cronyx-Helvetica", or the bracketed format, e.g. "Helvetica [Cronyx]". If the family has a foundry it is always returned, e.g. by families(), using the bracketed format.

The font() function returns a QFont given a family, style and point size.

A family and style combination can be checked to see if it is italic() or bold(), and to retrieve its weight(). Similarly we can call isBitmapScalable(), isSmoothlyScalable(), isScalable() and isFixedPitch().

A text version of a style is given by styleString().

The QFontDatabase class also supports some static functions, for example, standardSizes(). You can retrieve the Unicode 3.0 description of a script using scriptName(), and a sample of characters in a script with scriptSample().

Example:

    #include <qapplication.h>
    #include <qfontdatabase.h>

    int main( int argc, char **argv )
    {
        QApplication app( argc, argv );
        QFontDatabase fdb;
        QStringList families = fdb.families();
        for ( QStringList::Iterator f = families.begin(); f != families.end(); ++f ) {
            QString family = *f;
            qDebug( family );
            QStringList styles = fdb.styles( family );
            for ( QStringList::Iterator s = styles.begin(); s != styles.end(); ++s ) {
                QString style = *s;
                QString dstyle = "\t" + style + " (";
                QValueList<int> smoothies = fdb.smoothSizes( family, style );
                for ( QValueList<int>::Iterator points = smoothies.begin(); points != smoothies.end(); ++points ) {
                    dstyle += QString::number( *points ) + " ";
                }
                dstyle = dstyle.left( dstyle.length() - 1 ) + ")";
                qDebug( dstyle );
            }
        }
        return 0;
    }

This example gets the list of font families, then the list of styles for each family and the point sizes that are available for each family/style combination.

See also Environment Classes and Graphics Classes.

## Member Function Documentation

### QFontDatabase::QFontDatabase ()

Creates a font database object.

### bool QFontDatabase::bold ( const QString & family, const QString & style ) const

Returns TRUE if the font that has family family and style style is bold; otherwise returns FALSE.

See also italic() and weight().

### bool QFontDatabase::bold ( const QString & family, const QString & style, const QString & ) const

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

### QStringList QFontDatabase::families () const

Returns a list of the names of the available font families.

If a family exists in several foundries, the returned name for that font is in the form "family [foundry]". Examples: "Times [Adobe]", "Times [Cronyx]", "Palatino".

### QStringList QFontDatabase::families ( bool ) const

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

### QFont QFontDatabase::font ( const QString & family, const QString & style, int pointSize )

Returns a QFont object that has family family, style style and point size pointSize. If no matching font could be created, a QFont object that uses the application's default font is returned.

### QFont QFontDatabase::font ( const QString & familyName, const QString & style, int pointSize, const QString & )

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

### bool QFontDatabase::isBitmapScalable ( const QString & family, const QString & style = QString::null ) const

Returns TRUE if the font that has family family and style style is a scalable bitmap font; otherwise returns FALSE. Scaling a bitmap font usually produces an unattractive hardly readable result, because the pixels of the font are scaled. If you need to scale a bitmap font it is better to scale it to one of the fixed sizes returned by smoothSizes().

See also isScalable() and isSmoothlyScalable().

### bool QFontDatabase::isBitmapScalable ( const QString & family, const QString & style, const QString & ) const

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

### bool QFontDatabase::isFixedPitch ( const QString & family, const QString & style = QString::null ) const

Returns TRUE if the font that has family family and style style is fixed pitch; otherwise returns FALSE.

### bool QFontDatabase::isFixedPitch ( const QString & family, const QString & style, const QString & ) const

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

### bool QFontDatabase::isScalable ( const QString & family, const QString & style = QString::null ) const

Returns TRUE if the font that has family family and style style is scalable; otherwise returns FALSE.

See also isBitmapScalable() and isSmoothlyScalable().

### bool QFontDatabase::isScalable ( const QString & family, const QString & style, const QString & ) const

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

### bool QFontDatabase::isSmoothlyScalable ( const QString & family, const QString & style = QString::null ) const

Returns TRUE if the font that has family family and style style is smoothly scalable; otherwise returns FALSE. If this function returns TRUE, it's safe to scale this font to any size, and the result will always look attractive.

See also isScalable() and isBitmapScalable().

### bool QFontDatabase::isSmoothlyScalable ( const QString & family, const QString & style, const QString & ) const

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

### bool QFontDatabase::italic ( const QString & family, const QString & style ) const

Returns TRUE if the font that has family family and style style is italic; otherwise returns FALSE.

See also weight() and bold().

### bool QFontDatabase::italic ( const QString & family, const QString & style, const QString & ) const

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

### QValueList<int> QFontDatabase::pointSizes ( const QString & family, const QString & style = QString::null )

Returns a list of the point sizes available for the font that has family family and style style. The list may be empty.

See also smoothSizes() and standardSizes().

### QValueList<int> QFontDatabase::pointSizes ( const QString & family, const QString & style, const QString & )

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

### QString QFontDatabase::scriptName ( QFont::Script script )`[static]`

Returns a string that gives a default description of the script (e.g. for displaying to the user in a dialog). The name matches the name of the script as indicated by the Unicode 3.0 standard.

See also QFont::Script.

### QString QFontDatabase::scriptSample ( QFont::Script script )`[static]`

Returns a string with sample characters from script.

See also QFont::Script.

### QValueList<int> QFontDatabase::smoothSizes ( const QString & family, const QString & style )

Returns the point sizes of a font that has family family and style style that will look attractive. The list may be empty. For non-scalable fonts and smoothly scalable fonts, this function is equivalent to pointSizes().

See also pointSizes() and standardSizes().

### QValueList<int> QFontDatabase::smoothSizes ( const QString & family, const QString & style, const QString & )

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

### QValueList<int> QFontDatabase::standardSizes ()`[static]`

Returns a list of standard font sizes.

See also smoothSizes() and pointSizes().

### QString QFontDatabase::styleString ( const QFont & f )

Returns a string that describes the style of the font f. For example, "Bold Italic", "Bold", "Italic" or "Normal". An empty string may be returned.

### QStringList QFontDatabase::styles ( const QString & family ) const

Returns a list of the styles available for the font family, family. Some example styles: "Light", "Light Italic", "Bold", "Oblique", "Demi". The list may be empty.

### QStringList QFontDatabase::styles ( const QString & family, const QString & ) const

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

### int QFontDatabase::weight ( const QString & family, const QString & style ) const

Returns the weight of the font that has family family and style style. If there is no such family and style combination, returns -1.

See also italic() and bold().

### int QFontDatabase::weight ( const QString & family, const QString & style, const QString & ) const

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

This file is part of the Qt toolkit, copyright © 1995-2001 Trolltech, all rights reserved.