api

png.ch

Declarations in png.ch

1 declarationsimage

Declarations

Public only
image#
Publicnamespace
namespace image
png_crc32_table_entry#
function
func png_crc32_table_entry(i : u32) : u32
---------------------------------------------------------------------------
png_crc32#
function
func png_crc32(data : *u8, data_len : size_t) : u32
adler32#
function
func adler32(data : *u8, data_len : size_t) : u32
---------------------------------------------------------------------------
read_be32#
function
func read_be32(data : *u8, off : size_t) : u32
---------------------------------------------------------------------------
read_be16#
function
func read_be16(data : *u8, off : size_t) : u16
write_be32#
function
func write_be32(out : *u8, off : size_t, val : u32) : void
PngBitReader#
struct
struct PngBitReader { var data : *u8 var data_len : size_t var byte_pos : size_t var bit_buf : u32 var bits_in_buf : int }
---------------------------------------------------------------------------
init#
Publicfunction
func init(d : *u8, d_len : size_t) : PngBitReader
read_bits#
Publicfunction
func read_bits(self : &PngBitReader, n : int) : u32
align_to_byte#
Publicfunction
func align_to_byte(self : &PngBitReader) : void
PngHuffEntry#
struct
struct PngHuffEntry { var code : u16 var bits : u8 var value : u16 }
PngHuffTable#
struct
struct PngHuffTable { var entries : vector<PngHuffEntry> var min_bits : int var max_bits : int }
delete#
function
func delete(self : *PngHuffTable) : void
png_build_huff#
function
func png_build_huff(lengths : *u8, num : int, out : *PngHuffTable) : Result<Unit, ImageError>
png_decode_huff#
function
func png_decode_huff(reader : *PngBitReader, table : *PngHuffTable) : u16
png_raw_deflate#
function
func png_raw_deflate(input : *u8, input_len : size_t, output : *u8, out_capacity : size_t) : Result<size_t, ImageError>
png_zlib_decompress#
function
func png_zlib_decompress(data : *u8, data_len : size_t, out : *u8, out_capacity : size_t) : Result<size_t, ImageError>
---------------------------------------------------------------------------
png_paeth_predict#
function
func png_paeth_predict(a : int, b : int, c : int) : int
---------------------------------------------------------------------------
png_reconstruct_row#
function
func png_reconstruct_row(row_data : *u8, row_len : size_t, bpp : int, prev_row : *u8, filter : int) : void
png_chunk_type#
function
func png_chunk_type(data : *u8, offset : size_t) : u32
---------------------------------------------------------------------------
png_chunk_len#
function
func png_chunk_len(data : *u8, offset : size_t) : u32
png_chunk_name#
function
func png_chunk_name(b0 : u8, b1 : u8, b2 : u8, b3 : u8) : string
parse_png#
Publicfunction
func parse_png(data : *u8, data_len : size_t) : Result<Image, ImageError>
---------------------------------------------------------------------------
load_png#
Publicfunction
func load_png(path : *char) : Result<Image, ImageError>
---------------------------------------------------------------------------
png_write_chunk#
function
func png_write_chunk(out : *u8, pos : *size_t, chunk_type : u32, data : *u8, data_len : size_t) : void
png_store_deflate#
function
func png_store_deflate(raw : *u8, raw_len : size_t, out : *u8, out_capacity : size_t) : Result<size_t, ImageError>
Store-mode deflate: write uncompressed blocks
encode_png#
Publicfunction
func encode_png(img : *Image) : Result<vector<u8>, ImageError>
encode_png — encode an Image to in-memory PNG bytes (no file I/O).
save_png#
Publicfunction
func save_png(img : *Image, path : *char) : Result<Unit, ImageError>