Skip to main content

Converts images to GameBoy tileset

Project description

GitHub Lint and Tests PYPI Version License Discord Black

img2gb generates GameBoy Tilesets and Tilemaps from standard image (PNG, JPEG,…). It converts the images into the GameBoy image format and generates C code (.c and .h files) that can be used in GameBoy projects.

./doc/_static/banner.png

Dependencies

  • Python >= 3.9

  • Pillow >= 5.0

Install

Usage

Hacking

Setup

To work on img2gb first create a virtualenv:

python3 -m venv __env__

and activate it:

source __env__/bin/activate

Then install the project with all dev dependencies:

pip install -e .[dev]

Commands

You can lint the code and check coding style with:

nox -s lint

You can fix coding style using Black with:

nox -s black_fix

You can run test on all supported Python versions or on a specific Python version with:

nox -s test       # Run on all Python version

nox -s test-3.9   # Run on Python 3.9
nox -s test-3.10  # Run on Python 3.10
nox -s test-3.11  # Run on Python 3.11
nox -s test-3.12  # Run on Python 3.12
nox -s test-3.12  # Run on Python 3.13

And you can build the documentation with (result in build/html/):

nox -s gendoc

Support this project

Want to support this project?

Changelog

  • [NEXT] (changes on master, but not released yet):

    • Nothing yet ;)

  • v1.3.0:

    • feat: Added binary export of tilesets and tilemaps (@duysqubix, #44)

    • misc: Added Python 3.13 support (@flozz)

    • misc!: Removed Python 3.8 support (@flozz)

  • v1.2.0:

    • fix: Fixed wrong version displayed (@flozz, #3)

    • chore: Added Python 3.11 and 3.12 support

    • chore!: Removed Python 2.7 and 3.7 support

  • v1.1.0:

    • Removes arbitrary size limit for tilmaps

    • Implements offset option (#2)

  • v1.0.0:

    • Refacto of the Python API, with new high-level fuction to be easier to use

    • Refacto of the CLI: now tileset and tilemap are generated separately, this allow more options for both and covers more usecases.

    • New option to handle alternative palette

    • New option to handle 8x16px sprites

    • Documentation

    • Unit test (everything is not coverd but it is better than nothing :))

  • v0.10.0: Adds non-RGB image support (indexed images,…)

  • v0.9.1: Fixes an issue with Python 3

  • v0.9.0: Initial release (generates tiles, tilesets and tilemaps)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

img2gb-1.3.0.tar.gz (15.6 kB view details)

Uploaded Source

Built Distribution

img2gb-1.3.0-py3-none-any.whl (14.9 kB view details)

Uploaded Python 3

File details

Details for the file img2gb-1.3.0.tar.gz.

File metadata

  • Download URL: img2gb-1.3.0.tar.gz
  • Upload date:
  • Size: 15.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for img2gb-1.3.0.tar.gz
Algorithm Hash digest
SHA256 5a0395820d6f6d3dc3dd19477cd5e8cc3ab3936fa6674dc6fc46e18e719f3976
MD5 3c736f2d494faa3c09fb893b5a0f5719
BLAKE2b-256 120661333fd4594d2c5003820fae05ac648f4de0b65936af7d71e73385b2dd9c

See more details on using hashes here.

Provenance

File details

Details for the file img2gb-1.3.0-py3-none-any.whl.

File metadata

  • Download URL: img2gb-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 14.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for img2gb-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0662c719d211b380d5549a2af12da220e5cdf22fe9097c118282ba462602f43f
MD5 820ef37f796575b57a7b3faa5d47bfdb
BLAKE2b-256 d08976fa8015ffd78a194b4b9778890e8ab7496c99a232a7dac1a9e3c8197ee9

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page