Difference between revisions of "Font:setFilter"

(Added missing default value. Extended example.)
(Example)
 
Line 14: Line 14:
 
Nothing.
 
Nothing.
  
== Example ==
+
== Examples ==
 +
 
 
<source lang="lua">
 
<source lang="lua">
 
local font = love.graphics.newFont(40)
 
local font = love.graphics.newFont(40)
Line 23: Line 24:
 
love.graphics.print("Hello", 100,100, 0, .5) -- Scaled down.
 
love.graphics.print("Hello", 100,100, 0, .5) -- Scaled down.
 
love.graphics.print("World", 100,116, 0, 2)  -- Scaled up.
 
love.graphics.print("World", 100,116, 0, 2)  -- Scaled up.
 +
end
 +
</source>
 +
 +
=== Pixalated font ===
 +
 +
File `pixelfont-11p.png`:
 +
 +
[[File:pixelfont-11p.png]]
 +
 +
main.lua:
 +
<source lang="lua">
 +
local filename =  'pixelfont-11p.png'
 +
local glyphs = " abcdefghijklmnopqrstuvwxyz" ..
 +
    "ABCDEFGHIJKLMNOPQRSTUVWXYZ0" ..
 +
    "123456789.,!?-+/():;%&`'*#=[]\""
 +
 +
local fontImageData = love.image.newImageData(filename)
 +
local font11p = love.graphics.newImageFont(fontImageData, glyphs)
 +
font11p:setFilter( 'nearest', 'nearest' )
 +
 +
function love.draw ()
 +
love.graphics.setFont(font11p)
 +
love.graphics.print (glyphs, 0, 12)
 +
love.graphics.scale (2)
 +
love.graphics.print (glyphs, 0, 12)
 +
love.graphics.scale (2)
 +
love.graphics.print (glyphs, 0, 12)
 +
love.graphics.scale (2)
 +
love.graphics.print (glyphs, 0, 12)
 
end
 
end
 
</source>
 
</source>

Latest revision as of 17:09, 9 February 2025

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

Sets the filter mode for a font.

Function

Synopsis

Font:setFilter( min, mag, anisotropy )

Arguments

FilterMode min
How to scale a font down.
FilterMode mag (min)
How to scale a font up.
number anisotropy (1)
Maximum amount of anisotropic filtering used.

Returns

Nothing.

Examples

local font = love.graphics.newFont(40)
font:setFilter("linear", "nearest")

function love.draw()
	love.graphics.setFont(font)
	love.graphics.print("Hello", 100,100, 0, .5) -- Scaled down.
	love.graphics.print("World", 100,116, 0, 2)  -- Scaled up.
end

Pixalated font

File `pixelfont-11p.png`:

pixelfont-11p.png

main.lua:

local filename =  'pixelfont-11p.png'
local glyphs = " abcdefghijklmnopqrstuvwxyz" ..
    "ABCDEFGHIJKLMNOPQRSTUVWXYZ0" ..
    "123456789.,!?-+/():;%&`'*#=[]\""

local fontImageData = love.image.newImageData(filename)
local font11p = love.graphics.newImageFont(fontImageData, glyphs)
font11p:setFilter( 'nearest', 'nearest' )

function love.draw ()
	love.graphics.setFont(font11p)
	love.graphics.print (glyphs, 0, 12)
	love.graphics.scale (2)
	love.graphics.print (glyphs, 0, 12)
	love.graphics.scale (2)
	love.graphics.print (glyphs, 0, 12)
	love.graphics.scale (2)
	love.graphics.print (glyphs, 0, 12)
end

See Also

Other Languages