System.put_env("SKIA_EX_BUILD", "1") Mix.install([ {:rustler, "~> 0.38.0", runtime: false}, {:rustq, "~> 0.5", runtime: false}, {:skia, path: Path.expand("..", __DIR__)} ]) doc = Enum.reduce(0..400, Skia.canvas(320, 200) |> Skia.clear("#111827"), fn index, doc -> x = rem(index * 17, 320) y = rem(index * 31, 200) Skia.circle(doc, x: x, y: y, radius: 3 + rem(index, 9), fill: if(rem(index, 2) == 0, do: "#38bdf8", else: "#f472b6") ) end) IO.inspect(Skia.Benchmark.compare(doc), label: "benchmark") {:ok, png} = Skia.Compact.to_png(doc) File.write!("compact_benchmark.png", png)