1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
#!/usr/bin/env luajit
local lgi = require 'lgi'
local GObject = lgi.GObject --
local Gegl = lgi.Gegl
Gegl.init(arg)
local graph = Gegl.Node()
local src = graph:create_child("gegl:load")
src:set_property("path", GObject.Value(GObject.Type.STRING, "data/surfer.png"))
local crop = graph:create_child('gegl:crop')
crop:set_property("x", GObject.Value(GObject.Type.INT, 0))
crop:set_property("y", GObject.Value(GObject.Type.INT, 0))
crop:set_property("width", GObject.Value(GObject.Type.INT, 300))
crop:set_property("height", GObject.Value(GObject.Type.INT, 122))
local dst = graph:create_child("gegl:save")
dst:set_property("path", GObject.Value(GObject.Type.STRING, "lgi.png"))
local text = graph:create_child("gegl:text")
local white = Gegl.Color()
white:set_rgba(1,1,1,1)
text:set_property("string", GObject.Value(GObject.Type.STRING, "luajit + lgi + GEGL test"))
text:set_property("color", GObject.Value(GObject.Type.OBJECT, white))
local over = graph:create_child("gegl:over")
src:connect_to("output", crop, "input")
crop:connect_to("output", over, "input")
text:connect_to("output", over, "aux")
over:connect_to("output", dst, "input")
dst:process()
|