28 lines
730 B
Lua
28 lines
730 B
Lua
require"imlua"
|
|
require"cdlua"
|
|
require"cdluaim"
|
|
|
|
local image = im.ImageCreate(500, 500, im.RGB, im.BYTE)
|
|
image:AddAlpha()
|
|
local canvas = image:cdCreateCanvas() -- Creates a CD_IMAGERGB canvas
|
|
|
|
canvas:Activate()
|
|
|
|
-- Use SetBackground instead of Background to avoid conflict with cd.QUERY
|
|
canvas:SetBackground(cd.EncodeAlpha(cd.EncodeColor(255, 255, 255), 0)) -- full transparent white
|
|
canvas:Clear()
|
|
|
|
fgcolor = cd.EncodeAlpha(cd.EncodeColor(255, 0, 0), 50) -- semi transparent red
|
|
canvas:Foreground(fgcolor)
|
|
canvas:Font("Times", cd.BOLD, 24)
|
|
canvas:Text(100, 100, "Test")
|
|
canvas:Line(0,0,100,100)
|
|
|
|
fgcolor = cd.EncodeColor(0, 0, 255)
|
|
canvas:Foreground(fgcolor)
|
|
canvas:Line(0,50,150,50)
|
|
|
|
canvas:Kill()
|
|
|
|
image:Save("new.png", "PNG")
|