Difference between revisions of "love.graphics.newImageFont"
m (Add simple example) |
|||
(19 intermediate revisions by 7 users not shown) | |||
Line 1: | Line 1: | ||
− | Creates a new | + | Creates a new [[Font]] by loading a [[ImageFontFormat|specifically formatted]] image. |
+ | |||
+ | In versions prior to [[0.9.0]], LÖVE expects ISO 8859-1 encoding for the glyphs string. | ||
+ | |||
+ | {{newobjectnotice}} | ||
== Function == | == Function == | ||
=== Synopsis === | === Synopsis === | ||
<source lang="lua"> | <source lang="lua"> | ||
− | font = love.graphics.newImageFont( | + | font = love.graphics.newImageFont( filename, glyphs ) |
</source> | </source> | ||
=== Arguments === | === Arguments === | ||
− | {{param| | + | {{param|string|filename|The filepath to the image file.}} |
{{param|string|glyphs|A string of the characters in the image in order from left to right.}} | {{param|string|glyphs|A string of the characters in the image in order from left to right.}} | ||
=== Returns === | === Returns === | ||
Line 14: | Line 18: | ||
=== Synopsis === | === Synopsis === | ||
<source lang="lua"> | <source lang="lua"> | ||
− | font = love.graphics.newImageFont( filename, glyphs ) | + | font = love.graphics.newImageFont( imagedata, glyphs ) |
+ | </source> | ||
+ | === Arguments === | ||
+ | {{param|ImageData|imageData|The ImageData object to create the font from.}} | ||
+ | {{param|string|glyphs|A string of the characters in the image in order from left to right.}} | ||
+ | === Returns === | ||
+ | {{param|Font|font|A Font object which can be used to draw text on screen.}} | ||
+ | |||
+ | == Function == | ||
+ | {{newin|[[0.10.0]]|100|type=variant}} | ||
+ | === Synopsis === | ||
+ | <source lang="lua"> | ||
+ | font = love.graphics.newImageFont( filename, glyphs, extraspacing ) | ||
</source> | </source> | ||
=== Arguments === | === Arguments === | ||
{{param|string|filename|The filepath to the image file.}} | {{param|string|filename|The filepath to the image file.}} | ||
{{param|string|glyphs|A string of the characters in the image in order from left to right.}} | {{param|string|glyphs|A string of the characters in the image in order from left to right.}} | ||
+ | {{param|number|extraspacing|Additional spacing (positive or negative) to apply to each glyph in the Font.}} | ||
=== Returns === | === Returns === | ||
{{param|Font|font|A Font object which can be used to draw text on screen.}} | {{param|Font|font|A Font object which can be used to draw text on screen.}} | ||
+ | |||
+ | == Notes == | ||
+ | Instead of using this function, consider using a BMFont generator such as [http://www.angelcode.com/products/bmfont/ bmfont], [http://kvazars.com/littera/ littera], or [https://www.bmglyph.com/ bmGlyph] with [[love.graphics.newFont]]. Because slime said it was better. | ||
+ | |||
+ | == Examples == | ||
+ | Creating a simple image font. Download this [[:File:font_example.png|image file]] which will be used by LÖVE to create the font. Obviously when you want to create a font for your game you want to make the background transparent. | ||
+ | <source lang="lua"> | ||
+ | local font = love.graphics.newImageFont( 'font_example.png', ' ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789' ) | ||
+ | function love.draw() | ||
+ | love.graphics.setFont( font ) | ||
+ | love.graphics.print( 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789', 16, 16 ) | ||
+ | love.graphics.print( 'Text is now drawn using the font', 16, 32 ) | ||
+ | end | ||
+ | </source> | ||
+ | |||
== See Also == | == See Also == | ||
* [[parent::love.graphics]] | * [[parent::love.graphics]] | ||
Line 26: | Line 58: | ||
* [[ImageFontFormat | Image Font Format]] | * [[ImageFontFormat | Image Font Format]] | ||
[[Category:Functions]] | [[Category:Functions]] | ||
− | {{#set:Description=Creates a new | + | [[Sub-Category::Object Creation| ]] |
− | {{#set:Since= | + | {{#set:Description=Creates a new [[Font]] by loading a specifically formatted image.}} |
+ | {{#set:Since=020}} | ||
+ | {{#set:PrettySince=0.2.0}} | ||
== Other Languages == | == Other Languages == | ||
{{i18n|love.graphics.newImageFont}} | {{i18n|love.graphics.newImageFont}} |
Revision as of 17:02, 15 January 2017
Creates a new Font by loading a specifically formatted image.
In versions prior to 0.9.0, LÖVE expects ISO 8859-1 encoding for the glyphs string.
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! |
Contents
Function
Synopsis
font = love.graphics.newImageFont( filename, glyphs )
Arguments
string filename
- The filepath to the image file.
string glyphs
- A string of the characters in the image in order from left to right.
Returns
Font font
- A Font object which can be used to draw text on screen.
Function
Synopsis
font = love.graphics.newImageFont( imagedata, glyphs )
Arguments
ImageData imageData
- The ImageData object to create the font from.
string glyphs
- A string of the characters in the image in order from left to right.
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. |
Synopsis
font = love.graphics.newImageFont( filename, glyphs, extraspacing )
Arguments
string filename
- The filepath to the image file.
string glyphs
- A string of the characters in the image in order from left to right.
number extraspacing
- Additional spacing (positive or negative) to apply to each glyph in the Font.
Returns
Font font
- A Font object which can be used to draw text on screen.
Notes
Instead of using this function, consider using a BMFont generator such as bmfont, littera, or bmGlyph with love.graphics.newFont. Because slime said it was better.
Examples
Creating a simple image font. Download this image file which will be used by LÖVE to create the font. Obviously when you want to create a font for your game you want to make the background transparent.
local font = love.graphics.newImageFont( 'font_example.png', ' ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789' )
function love.draw()
love.graphics.setFont( font )
love.graphics.print( 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789', 16, 16 )
love.graphics.print( 'Text is now drawn using the font', 16, 32 )
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