# love.graphics.getCanvasFormats

Available since LÖVE 0.9.2
This function is not supported in earlier versions.

Gets the available Canvas formats, and whether each is supported.

## Function

### Synopsis

    formats = love.graphics.getCanvasFormats( )

### Arguments

None.

### Returns

`table formats`
  A table containing CanvasFormats as keys, and a boolean indicating whether the format is supported as values. Not all systems support all formats.

## Examples

### Create a canvas with the format 'rgba16f' if it is supported

    local formats = love.graphics.getCanvasFormats()
    if formats.rgba16f then
        canvas = love.graphics.newCanvas(800, 600, "rgba16f")
    else
        -- The 'rgba16f' format isn't supported. We could have some fallback code, or trigger a message telling the user their system is unsupported.
    end

### Display a list of the canvas formats on the screen

    canvasformats = love.graphics.getCanvasFormats()

    function love.draw()
        local y = 0
        for formatname, formatsupported in pairs(canvasformats) do
            local str = string.format("Supports format '%s': %s", formatname, tostring(formatsupported))
            love.graphics.print(str, 10, y)
            y = y + 20
        end
    end

## See Also

- love.graphics
- CanvasFormat
- love.graphics.newCanvas
- Canvas

##

Category:

- Functions