Skip to main content

Mapping Gardiner's codes to Unicode + generating corresponding images.

Project description

gardiner2unicode: Mapping Egyptian Hieroglyphs

A Python 3.9+ package that

  • provides a convenient out-of-the-box way to access the mapping of Gardiner's Sign List codes to unicode IDs;
  • generates hieroglyphs as images.

A list of hieroglyphs was copied from this Wikipedia template.

A 2.06 version of NewGardiner font is used by default. Please note that since 2.05 its license is OFL 1.1.

One can use any other font with UnicodeGlyphGenerator.

Python 3.9+ PyPI version Downloads CI Ruff

Installation

pip install -U gardiner2unicode

Breaking changes in 1.0.0

  • UnicodeGlyphGenerator(bkgr_color=...) -> UnicodeGlyphGenerator(fill_color=...) (the argument is the text fill colour; the old name was misleading).
  • GardinerToUnicodeMap.to_gardiner_from_hex(hex=...) -> to_gardiner_from_hex(hex_code=...) (the previous name shadowed the built-in hex).
  • GardinerToUnicodeMap now precomputes all derived lookup tables at construction time, so every to_* method is an O(1) dictionary access (no @lru_cache, no per-call int(..., 16) / chr(...)).
  • Minimum supported Python is now 3.9.

Usage example

from gardiner2unicode import GardinerToUnicodeMap, UnicodeGlyphGenerator

g2u = GardinerToUnicodeMap()
print(g2u.to_unicode_hex("A1"))

ugg = UnicodeGlyphGenerator()
ugg.generate_image("𓉓", save_path_png="O3_image.png")

Output:

00013000

O3

How to cite

Please cite this repository if you use this work in your research.

@misc{gardiner2unicode2021alekseev,
  title     = {{alexeyev/gardiner2unicode: Mapping Egyptian Hieroglyphs}},
  author    = {Anton Alekseev}, 
  year      = {2021},
  url       = {https://github.com/alexeyev/gardiner2unicode},
  language  = {english},
  publisher = {GitHub}, 
  journal   = {GitHub repository},  
  howpublished = {\url{https://github.com/alexeyev/gardiner2unicode/}}, 
}

Development

Install the package together with the development dependencies and run the linter and the test suite:

pip install -e ".[dev]"
ruff check .
pytest

pytest is configured (see pyproject.toml) to also produce a coverage report.

Links

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

gardiner2unicode-1.0.0.tar.gz (378.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gardiner2unicode-1.0.0-py3-none-any.whl (375.4 kB view details)

Uploaded Python 3

File details

Details for the file gardiner2unicode-1.0.0.tar.gz.

File metadata

  • Download URL: gardiner2unicode-1.0.0.tar.gz
  • Upload date:
  • Size: 378.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.18

File hashes

Hashes for gardiner2unicode-1.0.0.tar.gz
Algorithm Hash digest
SHA256 b05807a6d30d9ba8ab9e02293cba7751c5595f4cb2c12a6bf614dfd9c7519c54
MD5 679578016a739796cdb4aa04647bd4f9
BLAKE2b-256 b562beaa95ab62b7a35cfed091672c9be56086b834e56d612674db752bf8bcc2

See more details on using hashes here.

File details

Details for the file gardiner2unicode-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for gardiner2unicode-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c1b7ad20414fed2d96dbc5f878f3a1139350408d499ee236bbdd4b2c4d68344d
MD5 2d25efdc026ccdabcc1a90637fb48364
BLAKE2b-256 7756063c430af14ba066c8e5be3b85f11a350264bf8c41d77ef62cb605405ee0

See more details on using hashes here.

Supported by

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