Set an already-loaded [[Font]] as the current font or create and load a new one from the file and size.

It's recommended that [[Font]] objects are created with [[love.graphics.newFont]] in the loading stage and then passed to this function in the drawing stage.

== Function ==
=== Synopsis ===
<source lang="lua">
love.graphics.setFont( font )
</source>
=== Arguments ===
{{param|Font|font|The Font object to use.}}
=== Returns ===
Nothing.

== Function ==
{{oldin|[[0.8.0]]|080|type=variant}}
=== Synopsis ===
<source lang="lua">
love.graphics.setFont( filename, size )
</source>
=== Arguments ===
{{param|string|filename|The filepath to the font.}}
{{param|number|size (12)|The size of the font.}}
=== Returns ===
Nothing.
== Function ==
{{oldin|[[0.8.0]]|080|type=variant}}
This variant creates a new font using the default font and the size specified, and sets it as the current font. '''Do not use this function in [[love.update]] or [[love.draw]].''' That would create a new font every frame, eating up memory very quickly.
=== Synopsis ===
<source lang="lua">
love.graphics.setFont( size )
</source>
=== Arguments ===
{{param|number|size (12)|The size of the font.}}
=== Returns ===
Nothing.
== Examples ==
=== Draw some text with default font, 18px ===
<source lang="lua">
function love.graphics.load()
  love.graphics.setFont(love.graphics.newFont(18))
end

function love.draw()
	love.graphics.print("Hello", 300, 300)
end
</source>

=== Draw some text with custom font, 18px ===
<source lang="lua">
function love.load()
    Font = love.graphics.newFont("font.ttf", 18)
end

function love.draw()
    love.graphics.setFont(Font)
    love.graphics.print("Hello World", 0, 0)
end
</source>
== See Also ==
* [[parent::love.graphics]]
* [[love.graphics.newFont]]
* [[love.graphics.getFont]]
[[Category:Functions]]
{{#set:Description=Set an already-loaded Font as the current font.}}
{{#set:Since=000}}
{{#set:Sub-Category=State}}
== Other Languages ==
{{i18n|love.graphics.setFont}}