/tatl

Zig library for deserializing Aseprite files

Primary LanguageZigThe UnlicenseUnlicense

Tatl

Library for deserializing Aseprite files for usage in game development, image editors, etc.

Made for Aseprite v1.2.x, there is no guarantee this library will work with files made in other versions of Aseprite.

You can view the Aseprite file spec here.

Example

const std = @import("std");
const tatl = @import("tatl.zig");

pub fn main() !void {
    const allocator = std.heap.page_allocator;
    var file = try std.fs.openFileAbsolute("/path/to/file.ase", .{});
    const aseprite_import = try tatl.import(allocator, file.reader());
    // do stuff with import data
    aseprite_import.free(allocator);
}

Plans

  • Add file serialization, current roadblock for this is the lack of zlib compression in the Zig standard library (ziglang/zig#213)
  • Update to support the new and changed data for Aseprite v1.3