CopperSpice API
1.9.2
|
The QFontDatabase class provides information about the fonts available in the underlying window system. More...
Public Types | |
enum | WritingSystem |
Public Methods | |
QFontDatabase () | |
bool | bold (const QString &family, const QString &style) const |
QStringList | families (WritingSystem writingSystem=Any) const |
QFont | font (const QString &family, const QString &style, int pointSize) const |
bool | isBitmapScalable (const QString &family, const QString &style=QString ()) const |
bool | isFixedPitch (const QString &family, const QString &style=QString ()) const |
bool | isPrivateFamily (const QString &family) const |
bool | isScalable (const QString &family, const QString &style=QString ()) const |
bool | isSmoothlyScalable (const QString &family, const QString &style=QString ()) const |
bool | italic (const QString &family, const QString &style) const |
QList< int > | pointSizes (const QString &family, const QString &style=QString ()) |
QList< int > | smoothSizes (const QString &family, const QString &style) |
QStringList | styles (const QString &family) const |
QString | styleString (const QFont &font) const |
QString | styleString (const QFontInfo &fontInfo) const |
int | weight (const QString &family, const QString &style) const |
QList< WritingSystem > | writingSystems () const |
QList< WritingSystem > | writingSystems (const QString &family) const |
Static Public Methods | |
static int | addApplicationFont (const QString &fileName) |
static int | addApplicationFontFromData (const QByteArray &fontData) |
static QStringList | applicationFontFamilies (int id) |
static bool | removeAllApplicationFonts () |
static bool | removeApplicationFont (int id) |
static QList< int > | standardSizes () |
static QFont | systemFont (SystemFont type) |
static QString | writingSystemName (WritingSystem writingSystem) |
static QString | writingSystemSample (WritingSystem writingSystem) |
Friends | |
class | QFontDialog |
The QFontDatabase class provides information about the fonts available in the underlying window system. The most common use of this class is to query for a list of font families such as Helvetica, Verdana, or Times New Roman. Each family will have multiple entries for each supported point size and style. Font styles specify characteristics like bold or italic. The term foundry refers to a company which designs or distributes a particular font file. In QFontDatabase if a given font family is available from more than one foundry the name of the company is appended to the family name.
There are multiple foundries who have designed fonts in the Helvetica family. Calling the method families() will return one entry for each foundry installed on the current computer. The following is an example of a possible return value.
The font() method returns a QFont given a family, style, and point size.
There are methods in QFontDatabase called italic() and bold() which returns true if this style is available in the specified family. Calling isBitmapScalable(), isSmoothlyScalable(), isScalable(), and isFixedPitch() retrieves other properties about the given family.
The QFontDatabase class contains several static functions. The method writingSystemName() returns a description of a writing system and a sample of characters in a writing system is retrieved by calling writingSystemSample().
This example obtains the list of font families installed on the current system by calling database.families(). The code then walks each of these entries and obtains a list of the supported styles and point sizes. The results are displayed in a tree view.
Constant | Value | Description |
---|---|---|
QFontDatabase::Any | 0 | |
QFontDatabase::Latin | 1 | |
QFontDatabase::Greek | 2 | |
QFontDatabase::Cyrillic | 3 | |
QFontDatabase::Armenian | 4 | |
QFontDatabase::Hebrew | 5 | |
QFontDatabase::Arabic | 6 | |
QFontDatabase::Syriac | 7 | |
QFontDatabase::Thaana | 8 | |
QFontDatabase::Devanagari | 9 | |
QFontDatabase::Bengali | 10 | |
QFontDatabase::Gurmukhi | 11 | |
QFontDatabase::Gujarati | 12 | |
QFontDatabase::Oriya | 13 | |
QFontDatabase::Tamil | 14 | |
QFontDatabase::Telugu | 15 | |
QFontDatabase::Kannada | 16 | |
QFontDatabase::Malayalam | 17 | |
QFontDatabase::Sinhala | 18 | |
QFontDatabase::Thai | 19 | |
QFontDatabase::Lao | 20 | |
QFontDatabase::Tibetan | 21 | |
QFontDatabase::Myanmar | 22 | |
QFontDatabase::Georgian | 23 | |
QFontDatabase::Khmer | 24 | |
QFontDatabase::SimplifiedChinese | 25 | |
QFontDatabase::TraditionalChinese | 26 | |
QFontDatabase::Japanese | 27 | |
QFontDatabase::Korean | 28 | |
QFontDatabase::Vietnamese | 29 | |
QFontDatabase::Symbol | 30 | |
QFontDatabase::Other | Symbol | (the same as Symbol) |
QFontDatabase::Ogham | ? | |
QFontDatabase::Runic | ? | |
QFontDatabase::Nko | ? |
QFontDatabase::QFontDatabase | ( | ) |
Creates a font database object.
|
static |
Loads the font from the file specified by fileName and makes it available to the application. An ID is returned that can be used to remove the font again with removeApplicationFont() or to retrieve the list of family names contained in the font. This method returns -1 if the font could not be loaded. Currently only TrueType fonts, TrueType font collections, and OpenType fonts are supported.
|
static |
Loads the font from binary data specified by fontData and makes it available to the application. An ID is returned that can be used to remove the font again with removeApplicationFont() or to retrieve the list of family names contained in the font. This method returns -1 if the font could not be loaded. Currently only TrueType fonts and TrueType font collections are supported.
|
static |
Returns a list of font families for the given application font identified by id.
QStringList QFontDatabase::families | ( | WritingSystem | writingSystem = Any | ) | const |
Returns a sorted list of the available font families which support the writingSystem. 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".
bool QFontDatabase::isBitmapScalable | ( | const QString & | family, |
const QString & | style = QString() |
||
) | const |
Returns true if the font which has the given family, 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().
bool QFontDatabase::isFixedPitch | ( | const QString & | family, |
const QString & | style = QString() |
||
) | const |
Returns true if the font with the given family and style is fixed pitch, otherwise returns false.
bool QFontDatabase::isPrivateFamily | ( | const QString & | family | ) | const |
Returns true if and only if the family font family is private.
This happens on Mac OS X and iOS, where the system UI fonts are not accessible to the user. For completeness, QFontDatabase::families() returns all font families, including the private ones. You should use this function if you are developing a font selection control in order to keep private fonts hidden.
Returns true if the font which has the given family and style is scalable, otherwise returns false.
bool QFontDatabase::isSmoothlyScalable | ( | const QString & | family, |
const QString & | style = QString() |
||
) | const |
Returns true if the font which has the given family and style is smoothly scalable, otherwise returns false. If this method returns true, it is safe to scale this font to any size and the result will always look attractive.
QList< int > QFontDatabase::pointSizes | ( | const QString & | family, |
const QString & | style = QString() |
||
) |
Returns a list of the point sizes available for the font with the given family and style. The list may be empty.
|
static |
Removes all application-local fonts previously added using addApplicationFont() and addApplicationFontFromData(). Returns true if unloading of the fonts succeeded, otherwise returns false.
|
static |
Removes the previously loaded application font identified by id. Returns true if unloading of the font succeeded, otherwise returns false.
Returns the point sizes of a font with the given family and style that will look attractive. The list may be empty. For non-scalable fonts and bitmap scalable fonts, this function is equivalent to pointSizes().
|
static |
Returns a list of standard font sizes.
QStringList QFontDatabase::styles | ( | const QString & | family | ) | const |
Returns a list of the styles available for the font family. Some example styles: "Light", "Light Italic", "Bold", "Oblique", "Demi". The list may be empty.
Returns a string that describes the style of the font. For example, "Bold Italic", "Bold", "Italic" or "Normal". An empty string may be returned.
Returns a string that describes the style of the fontInfo. For example, "Bold Italic", "Bold", "Italic" or "Normal". An empty string may be returned.
|
static |
Returns the closest font for the given type according to the system theme.
|
static |
Returns the name for the given writingSystem.
QList< WritingSystem > QFontDatabase::writingSystems | ( | ) | const |
Returns a sorted list of the available writing systems. This is list generated from information about all installed fonts on the system.
QList< WritingSystem > QFontDatabase::writingSystems | ( | const QString & | family | ) | const |
Returns a sorted list of the writing systems supported by a given font family.
|
static |
Returns a string with sample characters from writingSystem.