Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/banchouboo/tatl
Zig library for deserializing Aseprite files
https://github.com/banchouboo/tatl
aseprite deserialization library zig
Last synced: 3 months ago
JSON representation
Zig library for deserializing Aseprite files
- Host: GitHub
- URL: https://github.com/banchouboo/tatl
- Owner: BanchouBoo
- License: unlicense
- Created: 2021-06-02T01:09:38.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2023-02-21T22:28:10.000Z (almost 2 years ago)
- Last Synced: 2023-07-12T20:33:12.911Z (over 1 year ago)
- Topics: aseprite, deserialization, library, zig
- Language: Zig
- Homepage:
- Size: 23.4 KB
- Stars: 9
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 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](https://github.com/aseprite/aseprite/blob/master/docs/ase-file-specs.md).
## Example
```zig
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 (https://github.com/ziglang/zig/issues/213)
* Update to support the new and changed data for Aseprite v1.3