Difference between revisions of "love.graphics.newFont"
(Change the Argument type to the same name) |
(Added note about otf support) |
||
Line 1: | Line 1: | ||
Creates a new [[Font]] from a TrueType font or [http://www.angelcode.com/products/bmfont/doc/file_format.html BMFont] file. Created fonts are not cached, in that calling this function with the same arguments will always create a new Font object. | Creates a new [[Font]] from a TrueType font or [http://www.angelcode.com/products/bmfont/doc/file_format.html BMFont] file. Created fonts are not cached, in that calling this function with the same arguments will always create a new Font object. | ||
+ | OpenType fonts (.otf) work but some of its features may not be supported. | ||
All variants which accept a filename can also accept a [[Data]] object instead. | All variants which accept a filename can also accept a [[Data]] object instead. |
Revision as of 15:43, 20 October 2023
Creates a new Font from a TrueType font or BMFont file. Created fonts are not cached, in that calling this function with the same arguments will always create a new Font object. OpenType fonts (.otf) work but some of its features may not be supported.
All variants which accept a filename can also accept a Data object instead.
The default font in LÖVE is 'Bitstream Vera Sans' size 12 (before LÖVE 12.0) and 'Noto Sans' size 13 (after LÖVE 12.0).
This function can be slow if it is called repeatedly, such as from love.update or love.draw. If you need to use a specific resource often, create it once and store it somewhere it can be reused! |
Function
Create a new BMFont or TrueType font.
Synopsis
font = love.graphics.newFont( filename )
Arguments
Variant filename
- The filepath or filedata to the font file. Types can be below:
string filename
- The filepath to the font file. This can be TrueType or, since 0.10.0, BMFont.
Data filename
- The filedata of the font file. This can be create by love.filesystem.newFileData.
Returns
Font font
- A Font object which can be used to draw text on screen.
Notes
If the file is a TrueType font, it will be size 12. Use the variant below to create a TrueType font with a custom size.
Function
Create a new TrueType font.
Synopsis
font = love.graphics.newFont( filename, size, hinting, dpiscale )
Arguments
HintingMode hinting ("normal")
- True Type hinting mode.
number dpiscale (love.graphics.getDPIScale())
- The DPI scale factor of the font.
Returns
Font font
- A Font object which can be used to draw text on screen.
Function
Available since LÖVE 0.10.0 |
This variant is not supported in earlier versions. |
Create a new BMFont.
Synopsis
font = love.graphics.newFont( filename, imagefilename )
Arguments
string filename
- The filepath to the BMFont file.
string imagefilename
- The filepath to the BMFont's image file. If this argument is omitted, the path specified inside the BMFont file will be used.
Returns
Font font
- A Font object which can be used to draw text on screen.
Function
Create a new instance of the default font (Vera Sans) with a custom size.
Synopsis
font = love.graphics.newFont( size, hinting, dpiscale )
Arguments
number size (12)
- The size of the font in pixels.
HintingMode hinting ("normal")
- True Type hinting mode.
number dpiscale (love.graphics.getDPIScale())
- The DPI scale factor of the font.
Returns
Font font
- A Font object which can be used to draw text on screen.
Examples
Use newFont to draw a custom styled text
-- Create a ttf file font with a custom size of 20 pixels.
mainFont = love.graphics.newFont("anyfont.ttf", 20)
function love.draw()
-- Setting the font so that it is used when drawning the string.
love.graphics.setFont(mainFont)
-- Draws "Hello world!" at position x: 100, y: 200 with the custom font applied.
love.graphics.print("Hello world!", 100, 200)
end
Use newFont to draw pixelated text
local font = love.graphics.newFont(7, "mono")
font:setFilter("nearest")
love.graphics.setFont(font)
function love.draw()
love.graphics.scale(4)
love.graphics.print ("Hello World 0123", 2, 2)
end
See Also
Other Languages
Dansk –
Deutsch –
English –
Español –
Français –
Indonesia –
Italiano –
Lietuviškai –
Magyar –
Nederlands –
Polski –
Português –
Română –
Slovenský –
Suomi –
Svenska –
Türkçe –
Česky –
Ελληνικά –
Български –
Русский –
Српски –
Українська –
עברית –
ไทย –
日本語 –
正體中文 –
简体中文 –
Tiếng Việt –
한국어
More info