# love.graphics.newFont

Creates a new Font.

| 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

### Synopsis

    font = love.graphics.newFont( filename, size )

### Arguments

`string filename`
  The filepath to the font file.
`number size (12)`
  The size of the font in pixels.

### Returns

`Font font`
  A Font object which can be used to draw text on screen.

## Function

### Synopsis

    font = love.graphics.newFont( file, size )

### Arguments

`File file`
  A File pointing to a font.
`number size (12)`
  The size of the font in pixels.

### Returns

`Font font`
  A Font object which can be used to draw text on screen.

## Function

### Synopsis

    font = love.graphics.newFont( data, size )

### Arguments

`Data data`
  The encoded data to decode into a font.
`number size (12)`
  The size of the font in pixels.

### Returns

`Font font`
  A Font object which can be used to draw text on screen.

## Function

This variant uses the default font (Vera Sans) with a custom size.

### Synopsis

    font = love.graphics.newFont( size )

### Arguments

`number size (12)`
  The size of the font in pixels.

### Returns

`Font font`
  A Font object which can be used to draw text on screen.

## Examples

### Use newFont to draw a custom styled text

    -- load ttf file font. set 20px font-size
    mainFont = love.graphics.newFont("anyfont.ttf", 20);

    function love.draw()
    	-- set font before draw text
    	love.graphics.setFont(mainFont);
    	-- draw text "Hello world!" at left: 100, top: 200
    	love.graphics.print("Hello world!", 100, 200);
    end;

## See Also

- Font
- love.graphics
- love.graphics.setFont

##

Category:

- Functions