img2gb - Converts Images to GameBoy Tileset and Tilemap
=======================================================
|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.
.. image:: ./doc/_static/banner.png
* Documentation: https://flozz.github.io/img2gb/
* HowTo: https://flozz.github.io/img2gb/howto.html
Dependencies
------------
* Python >= 3.9
* Pillow >= 5.0
Install
-------
* See https://flozz.github.io/img2gb/install.html
Usage
-----
* See https://flozz.github.io/img2gb/cli.html
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
Links
-----
* Examples of GameBoy programs that uses img2gb for graphics:
* https://github.com/flozz/gameboy-examples/tree/master/05-graphics2
* https://github.com/flozz/gameboy-examples/tree/master/06-graphics3-background
* Article about the tile encoding and img2gb: https://blog.flozz.fr/2018/11/19/developpement-gameboy-5-creer-des-tilesets/ (French)
Support this project
--------------------
Want to support this project?
* `☕️ Buy me a coffee <https://www.buymeacoffee.com/flozz>`__
* `💵️ Give me a tip on PayPal <https://www.paypal.me/0xflozz>`__
* `❤️ Sponsor me on GitHub <https://github.com/sponsors/flozz>`__
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)
.. |GitHub| image:: https://img.shields.io/github/stars/flozz/img2gb?label=GitHub&logo=github
:target: https://github.com/flozz/img2gb
.. |Lint and Tests| image:: https://github.com/flozz/img2gb/actions/workflows/python-ci.yml/badge.svg
:target: https://github.com/flozz/img2gb/actions
.. |PYPI Version| image:: https://img.shields.io/pypi/v/img2gb.svg
:target: https://pypi.python.org/pypi/img2gb
.. |License| image:: https://img.shields.io/pypi/l/img2gb.svg
:target: https://github.com/flozz/img2gb/blob/master/LICENSE
.. |Discord| image:: https://img.shields.io/badge/chat-Discord-8c9eff?logo=discord&logoColor=ffffff
:target: https://discord.gg/P77sWhuSs4
.. |Black| image:: https://img.shields.io/badge/code%20style-black-000000.svg
:target: https://black.readthedocs.io/en/stable
Raw data
{
"_id": null,
"home_page": "https://github.com/flozz/img2gb",
"name": "img2gb",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "gb gameboy image tile tileset tilemap",
"author": "Fabien LOISON",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/12/06/61333fd4594d2c5003820fae05ac648f4de0b65936af7d71e73385b2dd9c/img2gb-1.3.0.tar.gz",
"platform": null,
"description": "img2gb - Converts Images to GameBoy Tileset and Tilemap\n=======================================================\n\n|GitHub| |Lint and Tests| |PYPI Version| |License| |Discord| |Black|\n\n img2gb generates GameBoy Tilesets and Tilemaps from standard image (PNG,\n JPEG,...). It converts the images into the GameBoy image format and\n generates C code (``.c`` and ``.h`` files) that can be used in GameBoy\n projects.\n\n.. image:: ./doc/_static/banner.png\n\n* Documentation: https://flozz.github.io/img2gb/\n* HowTo: https://flozz.github.io/img2gb/howto.html\n\n\nDependencies\n------------\n\n* Python >= 3.9\n* Pillow >= 5.0\n\n\nInstall\n-------\n\n* See https://flozz.github.io/img2gb/install.html\n\n\nUsage\n-----\n\n* See https://flozz.github.io/img2gb/cli.html\n\n\nHacking\n-------\n\nSetup\n~~~~~\n\nTo work on img2gb first create a virtualenv::\n\n python3 -m venv __env__\n\nand activate it::\n\n source __env__/bin/activate\n\nThen install the project with all dev dependencies::\n\n pip install -e .[dev]\n\n\nCommands\n~~~~~~~~\n\nYou can lint the code and check coding style with::\n\n nox -s lint\n\nYou can fix coding style using Black with::\n\n nox -s black_fix\n\nYou can run test on all supported Python versions or on a specific Python\nversion with::\n\n nox -s test # Run on all Python version\n\n nox -s test-3.9 # Run on Python 3.9\n nox -s test-3.10 # Run on Python 3.10\n nox -s test-3.11 # Run on Python 3.11\n nox -s test-3.12 # Run on Python 3.12\n nox -s test-3.12 # Run on Python 3.13\n\nAnd you can build the documentation with (result in ``build/html/``)::\n\n nox -s gendoc\n\n\nLinks\n-----\n\n* Examples of GameBoy programs that uses img2gb for graphics:\n * https://github.com/flozz/gameboy-examples/tree/master/05-graphics2\n * https://github.com/flozz/gameboy-examples/tree/master/06-graphics3-background\n* Article about the tile encoding and img2gb: https://blog.flozz.fr/2018/11/19/developpement-gameboy-5-creer-des-tilesets/ (French)\n\n\nSupport this project\n--------------------\n\nWant to support this project?\n\n* `\u2615\ufe0f Buy me a coffee <https://www.buymeacoffee.com/flozz>`__\n* `\ud83d\udcb5\ufe0f Give me a tip on PayPal <https://www.paypal.me/0xflozz>`__\n* `\u2764\ufe0f Sponsor me on GitHub <https://github.com/sponsors/flozz>`__\n\n\nChangelog\n---------\n\n* **[NEXT]** (changes on ``master``, but not released yet):\n\n * Nothing yet ;)\n\n* **v1.3.0:**\n\n * feat: Added binary export of tilesets and tilemaps (@duysqubix, #44)\n * misc: Added Python 3.13 support (@flozz)\n * misc!: Removed Python 3.8 support (@flozz)\n\n* **v1.2.0:**\n\n * fix: Fixed wrong version displayed (@flozz, #3)\n * chore: Added Python 3.11 and 3.12 support\n * chore!: Removed Python 2.7 and 3.7 support\n\n* **v1.1.0:**\n\n * Removes arbitrary size limit for tilmaps\n * Implements ``offset`` option (#2)\n\n* **v1.0.0:**\n\n * Refacto of the Python API, with new high-level fuction to be easier to use\n * Refacto of the CLI: now tileset and tilemap are generated separately, this allow more options for both and covers more usecases.\n * New option to handle alternative palette\n * New option to handle 8x16px sprites\n * Documentation\n * Unit test (everything is not coverd but it is better than nothing :))\n\n* **v0.10.0:** Adds non-RGB image support (indexed images,...)\n* **v0.9.1:** Fixes an issue with Python 3\n* **v0.9.0:** Initial release (generates tiles, tilesets and tilemaps)\n\n\n.. |GitHub| image:: https://img.shields.io/github/stars/flozz/img2gb?label=GitHub&logo=github\n :target: https://github.com/flozz/img2gb\n\n.. |Lint and Tests| image:: https://github.com/flozz/img2gb/actions/workflows/python-ci.yml/badge.svg\n :target: https://github.com/flozz/img2gb/actions\n\n.. |PYPI Version| image:: https://img.shields.io/pypi/v/img2gb.svg\n :target: https://pypi.python.org/pypi/img2gb\n\n.. |License| image:: https://img.shields.io/pypi/l/img2gb.svg\n :target: https://github.com/flozz/img2gb/blob/master/LICENSE\n\n.. |Discord| image:: https://img.shields.io/badge/chat-Discord-8c9eff?logo=discord&logoColor=ffffff\n :target: https://discord.gg/P77sWhuSs4\n\n.. |Black| image:: https://img.shields.io/badge/code%20style-black-000000.svg\n :target: https://black.readthedocs.io/en/stable\n",
"bugtrack_url": null,
"license": "BSD-3-Clause",
"summary": "Converts images to GameBoy tileset",
"version": "1.3.0",
"project_urls": {
"Chat": "https://discord.gg/P77sWhuSs4",
"Donate": "https://github.com/flozz/img2gb#support-this-project",
"Homepage": "https://github.com/flozz/img2gb",
"Issues": "https://github.com/flozz/img2gb/issues",
"Source Code": "https://github.com/flozz/img2gb"
},
"split_keywords": [
"gb",
"gameboy",
"image",
"tile",
"tileset",
"tilemap"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "d08976fa8015ffd78a194b4b9778890e8ab7496c99a232a7dac1a9e3c8197ee9",
"md5": "820ef37f796575b57a7b3faa5d47bfdb",
"sha256": "0662c719d211b380d5549a2af12da220e5cdf22fe9097c118282ba462602f43f"
},
"downloads": -1,
"filename": "img2gb-1.3.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "820ef37f796575b57a7b3faa5d47bfdb",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 14909,
"upload_time": "2024-10-28T12:55:13",
"upload_time_iso_8601": "2024-10-28T12:55:13.782323Z",
"url": "https://files.pythonhosted.org/packages/d0/89/76fa8015ffd78a194b4b9778890e8ab7496c99a232a7dac1a9e3c8197ee9/img2gb-1.3.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "120661333fd4594d2c5003820fae05ac648f4de0b65936af7d71e73385b2dd9c",
"md5": "3c736f2d494faa3c09fb893b5a0f5719",
"sha256": "5a0395820d6f6d3dc3dd19477cd5e8cc3ab3936fa6674dc6fc46e18e719f3976"
},
"downloads": -1,
"filename": "img2gb-1.3.0.tar.gz",
"has_sig": false,
"md5_digest": "3c736f2d494faa3c09fb893b5a0f5719",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 15618,
"upload_time": "2024-10-28T12:55:14",
"upload_time_iso_8601": "2024-10-28T12:55:14.795788Z",
"url": "https://files.pythonhosted.org/packages/12/06/61333fd4594d2c5003820fae05ac648f4de0b65936af7d71e73385b2dd9c/img2gb-1.3.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-28 12:55:14",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "flozz",
"github_project": "img2gb",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "img2gb"
}