--Render Sitelen Pona text. One file per glyph. local love = love local sp = {} local info = love.filesystem.getInfo( "sitelenpona" ) for _, filename in ipairs(love.filesystem.getDirectoryItems( "sitelenpona" )) do sp[filename:gsub( ".png", "" )] = love.graphics.newImage( "sitelenpona/"..filename ) end --Render one or two glyphs in the center. sp.Draw = function( t ) local cx, cy = love.graphics.getDimensions() cx, cy = 0.5 * cx, 0.5 * cy love.graphics.setColor( 1.0, 1.0, 1.0, options["high contrast"].value and 0.2 or 0.5) if #t == 1 then love.graphics.draw( sp[t[1]] or sp.pilin, cx - 128, cy - 128 ) elseif #t == 2 then love.graphics.draw( sp[t[1]] or sp.pilin, cx - 160, cy - 96, 0, 0.75, 0.75 ) love.graphics.draw( sp[t[2]] or sp.pilin, cx - 16, cy - 96, 0, 0.75, 0.75 ) elseif #t == 3 then love.graphics.draw( sp[t[1]] or sp.pilin, cx - 128, cy - 64, 0, 0.5, 0.5 ) love.graphics.draw( sp[t[1]] or sp.pilin, cx - 128, cy - 64, 0, 0.5, 0.5 ) love.graphics.draw( sp[t[2]] or sp.pilin, cx, cy - 64, 0, 0.5, 0.5 ) end --[[ w in str:gmatch( "%a+") do t[i] = w i = i + 1 end for _, str in ipairs( t ) do local w, h = love.graphics.getDimensions() local x, y = 0.5 * w - 128, 0.5 * h - 128 love.graphics.draw( sp[str] or sp.pilin, x, y ) end]] end return sp