FontLoader QML Type
Allows fonts to be loaded by URL. More...
Import Statement: | import QtQuick 2.2 |
Properties
Detailed Description
The FontLoader type is used to load fonts by URL.
The status indicates when the font has been loaded, which is useful for fonts loaded from remote sources.
For example:
import QtQuick 2.0 Column { FontLoader { id: webFont; source: "http://www.mysite.com/myfont.ttf" } Text { text: "Fancy font"; font: webFont.font } }
See also Qt Quick Examples - Text Fonts.
Property Documentation
[since 6.0] font : font |
This property holds a default query for the loaded font.
You can use this to select the font if other properties than just the family name are needed to disambiguate. You can either specify the font using individual properties:
Item { width: 200; height: 50 FontLoader { id: webFont source: "http://www.mysite.com/myfont.ttf" } Text { text: "Fancy font" font.family: webFont.font.family font.weight: webFont.font.weight font.style: webFont.font.style font.pixelSize: 24 } }
Or you can set the full font query directly:
Item { width: 200; height: 50 FontLoader { id: webFont source: "http://www.mysite.com/myfont.ttf" } Text { text: "Fancy font" font: webFont.font } }
In this case, the default font query will be used with no modifications (so font size, for instance, will be the system default).
This property was introduced in Qt 6.0.
[read-only] name : string |
This property holds the name of the font family. It is set automatically when a font is loaded using the source property.
This is equivalent to the family property of the FontLoader's font property.
Use this to set the font.family
property of a Text
item.
Example:
Item { width: 200; height: 50 FontLoader { id: webFont source: "http://www.mysite.com/myfont.ttf" } Text { text: "Fancy font" font.family: webFont.name } }
source : url |
The URL of the font to load.
status : enumeration |
This property holds the status of font loading. It can be one of:
- FontLoader.Null - no font has been set
- FontLoader.Ready - the font has been loaded
- FontLoader.Loading - the font is currently being loaded
- FontLoader.Error - an error occurred while loading the font
Use this status to provide an update or respond to the status change in some way. For example, you could:
- Trigger a state change:
State { name: 'loaded'; when: loader.status == FontLoader.Ready }
- Implement an
onStatusChanged
signal handler:FontLoader { id: loader onStatusChanged: if (loader.status == FontLoader.Ready) console.log('Loaded') }
- Bind to the status value:
Text { text: loader.status == FontLoader.Ready ? 'Loaded' : 'Not loaded' }