Qyoto  4.0.5
Qyoto is a C# language binding for Qt
 All Classes Namespaces Functions Variables Typedefs Enumerations Properties
QtGui.QFontDatabase Class Reference

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

Inheritance diagram for QtGui.QFontDatabase:
Collaboration diagram for QtGui.QFontDatabase:

Public Types

enum  WritingSystem {
  Any = 0, Arabic = 6, Armenian = 4, Bengali = 10,
  Cyrillic = 3, Devanagari = 9, Georgian = 23, Greek = 2,
  Gujarati = 12, Gurmukhi = 11, Hebrew = 5, Japanese = 27,
  Kannada = 16, Khmer = 24, Korean = 28, Lao = 20,
  Latin = 1, Malayalam = 17, Myanmar = 22, Nko = 33,
  Ogham = 31, Oriya = 13, Other = 30, Runic = 32,
  SimplifiedChinese = 25, Sinhala = 18, Symbol = 30, Syriac = 7,
  Tamil = 14, Telugu = 15, Thaana = 8, Thai = 19,
  Tibetan = 21, TraditionalChinese = 26, Vietnamese = 29, WritingSystemsCount = 34
}
 

Public Member Functions

 QFontDatabase ()
 
 
 QFontDatabase (QFontDatabase copy)
 
 
virtual void CreateProxy ()
 
new bool Bold (string family, string style)
 
 
new
System.Collections.Generic.List
< string > 
Families (QFontDatabase.WritingSystem writingSystem=QFontDatabase.WritingSystem.Any)
 
 
new QFont Font (string family, string style, int pointSize)
 
 
new bool HasFamily (string family)
 
new bool IsBitmapScalable (string family, string style="")
 
 
new bool IsFixedPitch (string family, string style="")
 
 
new bool IsScalable (string family, string style="")
 
 
new bool IsSmoothlyScalable (string family, string style="")
 
 
new bool Italic (string family, string style)
 
 
new
System.Collections.Generic.List
< System.Int32 > 
PointSizes (string family, string style="")
 
 
new
System.Collections.Generic.List
< System.Int32 > 
SmoothSizes (string family, string style)
 
 
new string StyleString (QFont font)
 
 
new string StyleString (QFontInfo fontInfo)
 
 
new
System.Collections.Generic.List
< string > 
Styles (string family)
 
 
new int Weight (string family, string style)
 
 
new
System.Collections.Generic.List
< QFontDatabase.WritingSystem
WritingSystems ()
 
 
new
System.Collections.Generic.List
< QFontDatabase.WritingSystem
WritingSystems (string family)
 
 
new void Dispose ()
 

Static Public Member Functions

static int AddApplicationFont (string fileName)
 
 
static int AddApplicationFontFromData (QByteArray fontData)
 
 
static
System.Collections.Generic.List
< string > 
ApplicationFontFamilies (int id)
 
 
static bool RemoveAllApplicationFonts ()
 
 
static bool RemoveApplicationFont (int id)
 
 
static
System.Collections.Generic.List
< System.Int32 > 
StandardSizes ()
 
 
static bool SupportsThreadedFontRendering ()
 
 
static string WritingSystemName (QFontDatabase.WritingSystem writingSystem)
 
 
static string WritingSystemSample (QFontDatabase.WritingSystem writingSystem)
 
 

Protected Member Functions

 QFontDatabase (System.Type dummy)
 

Protected Attributes

SmokeInvocation interceptor
 

Properties

virtual System.IntPtr SmokeObject [get, set]
 
static new QMetaObject StaticMetaObject [get]
 

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 for 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; for example: "Helvetica [Adobe]" and "Helvetica [Cronyx]". When you specify a family, you can either use the old hyphenated "foundry-family" format or the bracketed "family [foundry]" format; for example: "Cronyx-Helvetica" or "Helvetica [Cronyx]". If the family has a foundry it is always returned using the bracketed format, as is the case with the value returned by families().

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().

Use the styleString() to obtain a text version of a style.

The QFontDatabase class also supports some static functions, for example, standardSizes(). You can retrieve the description of a writing system using writingSystemName(), and a sample of characters in a writing system with writingSystemSample().

Example:

QFontDatabase database;

QTreeWidget fontTree;

fontTree.setColumnCount(2);

fontTree.setHeaderLabels(QStringList() << "Font" << "Smooth Sizes");

foreach (const QString &family, database.families()) {

QTreeWidgetItem *familyItem = new QTreeWidgetItem(&fontTree);

familyItem->setText(0, family);

foreach (const QString &style, database.styles(family)) {

QTreeWidgetItem *styleItem = new QTreeWidgetItem(familyItem);

styleItem->setText(0, style);

QString sizes;

foreach (int points, database.smoothSizes(family, style))

sizes += QString::number(points) + " ";

styleItem->setText(1, sizes.trimmed());

}

}

This example gets the list of font families, the list of styles for each family, and the point sizes that are available for each combination of family and style, displaying this information in a tree view.

See also QFont, QFontInfo, QFontMetrics, QFontComboBox, and Character Map Example.

Member Enumeration Documentation

Enumerator:
Any 
Arabic 
Armenian 
Bengali 
Cyrillic 
Devanagari 
Georgian 
Greek 
Gujarati 
Gurmukhi 
Hebrew 
Japanese 
Kannada 
Khmer 
Korean 
Lao 
Latin 
Malayalam 
Myanmar 
Nko 
Ogham 
Oriya 
Other 

(the same as Symbol)

Runic 
SimplifiedChinese 
Sinhala 
Symbol 
Syriac 
Tamil 
Telugu 
Thaana 
Thai 
Tibetan 
TraditionalChinese 
Vietnamese 
WritingSystemsCount 

Constructor & Destructor Documentation

QtGui.QFontDatabase.QFontDatabase ( System.Type  dummy)
protected
QtGui.QFontDatabase.QFontDatabase ( )

Creates a font database object.

QtGui.QFontDatabase.QFontDatabase ( QFontDatabase  copy)

Creates a font database object.

Member Function Documentation

static int QtGui.QFontDatabase.AddApplicationFont ( string  fileName)
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.

The function returns -1 if the font could not be loaded.

Currently only TrueType fonts, TrueType font collections, and OpenType fonts are supported.

Note: Adding application fonts on Unix/X11 platforms without fontconfig is currently not supported.

Note: On Symbian, the font family names get truncated to a length of 20 characters.

This function was introduced in Qt 4.2.

See also addApplicationFontFromData(), applicationFontFamilies(), and removeApplicationFont().

static int QtGui.QFontDatabase.AddApplicationFontFromData ( QByteArray  fontData)
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.

The function returns -1 if the font could not be loaded.

Currently only TrueType fonts and TrueType font collections are supported.

Note: Adding application fonts on Unix/X11 platforms without fontconfig is currently not supported.

Note: On Symbian, the font family names get truncated to a length of 20 characters.

This function was introduced in Qt 4.2.

See also addApplicationFont(), applicationFontFamilies(), and removeApplicationFont().

static System.Collections.Generic.List<string> QtGui.QFontDatabase.ApplicationFontFamilies ( int  id)
static

Returns a list of font families for the given application font identified by id.

This function was introduced in Qt 4.2.

See also addApplicationFont() and addApplicationFontFromData().

new bool QtGui.QFontDatabase.Bold ( string  family,
string  style 
)

Returns true if the font that has family family and style style is bold; otherwise returns false.

See also italic() and weight().

virtual void QtGui.QFontDatabase.CreateProxy ( )
virtual
new void QtGui.QFontDatabase.Dispose ( )
new System.Collections.Generic.List<string> QtGui.QFontDatabase.Families ( QFontDatabase.WritingSystem  writingSystem = QFontDatabase.WritingSystem.Any)

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".

See also writingSystems().

new QFont QtGui.QFontDatabase.Font ( string  family,
string  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.

new bool QtGui.QFontDatabase.HasFamily ( string  family)
new bool QtGui.QFontDatabase.IsBitmapScalable ( string  family,
string  style = "" 
)

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().

new bool QtGui.QFontDatabase.IsFixedPitch ( string  family,
string  style = "" 
)

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

new bool QtGui.QFontDatabase.IsScalable ( string  family,
string  style = "" 
)

Returns true if the font that has family family and style style is scalable; otherwise returns false.

See also isBitmapScalable() and isSmoothlyScalable().

new bool QtGui.QFontDatabase.IsSmoothlyScalable ( string  family,
string  style = "" 
)

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().

new bool QtGui.QFontDatabase.Italic ( string  family,
string  style 
)

Returns true if the font that has family family and style style is italic; otherwise returns false.

See also weight() and bold().

new System.Collections.Generic.List<System.Int32> QtGui.QFontDatabase.PointSizes ( string  family,
string  style = "" 
)

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

See also smoothSizes() and standardSizes().

static bool QtGui.QFontDatabase.RemoveAllApplicationFonts ( )
static

Removes all application-local fonts previously added using addApplicationFont() and addApplicationFontFromData().

Returns true if unloading of the fonts succeeded; otherwise returns false.

This function was introduced in Qt 4.2.

See also removeApplicationFont(), addApplicationFont(), and addApplicationFontFromData().

static bool QtGui.QFontDatabase.RemoveApplicationFont ( int  id)
static

Removes the previously loaded application font identified by id. Returns true if unloading of the font succeeded; otherwise returns false.

This function was introduced in Qt 4.2.

See also removeAllApplicationFonts(), addApplicationFont(), and addApplicationFontFromData().

new System.Collections.Generic.List<System.Int32> QtGui.QFontDatabase.SmoothSizes ( string  family,
string  style 
)

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().

See also pointSizes() and standardSizes().

static System.Collections.Generic.List<System.Int32> QtGui.QFontDatabase.StandardSizes ( )
static

Returns a list of standard font sizes.

See also smoothSizes() and pointSizes().

new System.Collections.Generic.List<string> QtGui.QFontDatabase.Styles ( string  family)

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.

See also families().

new string QtGui.QFontDatabase.StyleString ( QFont  font)

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

new string QtGui.QFontDatabase.StyleString ( QFontInfo  fontInfo)

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 bool QtGui.QFontDatabase.SupportsThreadedFontRendering ( )
static

Returns true if font rendering is supported outside the GUI thread, false otherwise. In other words, a return value of false means that all QPainter::drawText() calls outside the GUI thread will not produce readable output.

This function was introduced in Qt 4.4.

See also Painting In Threads.

new int QtGui.QFontDatabase.Weight ( string  family,
string  style 
)

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().

static string QtGui.QFontDatabase.WritingSystemName ( QFontDatabase.WritingSystem  writingSystem)
static

Returns the names the writingSystem (e.g. for displaying to the user in a dialog).

new System.Collections.Generic.List<QFontDatabase.WritingSystem> QtGui.QFontDatabase.WritingSystems ( )

Returns a sorted list of the available writing systems. This is list generated from information about all installed fonts on the system.

See also families().

new System.Collections.Generic.List<QFontDatabase.WritingSystem> QtGui.QFontDatabase.WritingSystems ( string  family)

Returns a sorted list of the writing systems supported by a given font family.

See also families().

static string QtGui.QFontDatabase.WritingSystemSample ( QFontDatabase.WritingSystem  writingSystem)
static

Returns a string with sample characters from writingSystem.

Member Data Documentation

SmokeInvocation QtGui.QFontDatabase.interceptor
protected

Property Documentation

virtual System.IntPtr QtGui.QFontDatabase.SmokeObject
getset
new QMetaObject QtGui.QFontDatabase.StaticMetaObject
staticget