pwuertz / pymtpng

Python bindings for MTPNG library.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Python mtpng

Python bindings for the MTPNG library, a parallelized PNG encoder in Rust by Brion Vibber.

Usage

import pymtpng
...
# Encode numpy uint8 array to PNG
with open("image_uint8.png", "wb") as fh:
    pymtpng.encode_png(image_uint8, fh)
...
# Encode numpy uint16 array to PNG
with open("image_uint16.png", "wb") as fh:
    pymtpng.encode_png(image_uint16, fh)
...
# Customize encoding options
pymtpng.encode_png(
    image, fh,
    filter=pymtpng.Filter.Adaptive,
    compression_level=pymtpng.CompressionLevel.Fast,
    strategy=pymtpng.Strategy.Huffman,
)
...
# Store key-value pairs as iTXt chunks
pymtpng.encode_png(image, fh, info={"Hello": "World"})

About

Python bindings for MTPNG library.

License:MIT License


Languages

Language:C++ 72.6%Language:CMake 15.1%Language:Python 12.2%