{{newin|[[0.9.2]]|092|type=function}}
Gets the available [[CanvasFormat|Canvas formats]], and whether each is supported.
== Function ==
=== Synopsis ===
<source lang="lua">
formats = love.graphics.getCanvasFormats( )
</source>
=== Arguments ===
None.
=== Returns ===
{{param|table|formats|A table containing [[CanvasFormat]]s as keys, and a boolean indicating whether the format is supported as values. Not all systems support all formats.}}

== Function ==
{{newin|[[11.0]]|110|type=variant}}
=== Synopsis ===
<source lang="lua">
formats = love.graphics.getCanvasFormats( readable )
</source>
=== Arguments ===
{{param|boolean|readable|If true, the returned formats will only be indicated as supported if [[love.graphics.newCanvas]] will work with the [[Texture:isReadable|readable]] flag set to true for that format, and vice versa if the parameter is false.}}
=== Returns ===
{{param|table|formats|A table containing [[CanvasFormat]]s as keys, and a boolean indicating whether the format is supported as values (taking into account the readable parameter). Not all systems support all formats.}}

== Examples ==
=== Create a canvas with the format 'rgba16f' if it is supported ===
<source lang="Lua">
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
</source>
=== Display a list of the canvas formats on the screen ===
<source lang="Lua">
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
</source>
== See Also ==
* [[parent::love.graphics]]
* [[CanvasFormat]]
* [[love.graphics.newCanvas]]
* [[Canvas]]
[[Category:Functions]]
{{#set:Sub-Category=SystemInfo}}
{{#set:Description=Gets the available [[CanvasFormat|Canvas formats]], and whether each is supported.}}
== Other Languages ==
{{i18n|love.graphics.getCanvasFormats}}