Skip to main content

excel-photo

Convert any image into an .xlsx file where the image is recreated using colored Excel cells - pixel art, but it's a spreadsheet.

Install

pip install excel-photo

Usage

CLI

excel-photo input.png output.xlsx --max-dim 300 --max-colors 256

Python

from excel_photo import image_to_excel

result = image_to_excel("input.png", "output.xlsx", max_dim=300, max_colors=256)
print(result)  # {'grid_width': 300, 'grid_height': 168, 'unique_colors': 249}

Options

Option Default What it does
max_dim 100 Longer side of the grid, in cells. This is the resolution knob.
max_colors 256 Palette size (1-256). Keeps unique cell styles bounded regardless of max_dim - Excel hard-caps a workbook at 64,000 unique cell styles.

Notes

  • 300-400 for max_dim is a sweet spot: a real quality jump, still opens smoothly in Excel. Beyond ~500-600 Excel starts feeling sluggish just from rendering that many individually-styled cells, even though the file itself stays small.
  • Unused columns past the image are hidden so scrolling right stops cleanly. Rows aren't hidden the same way - Excel has no bulk-range mechanism for hiding rows, so doing this for the ~1M rows below the image would balloon the file instead of shrinking it.

License

MIT

Download files

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

Source Distribution

excel_photo-0.1.0.tar.gz (7.9 MB view details)

Uploaded Source

Built Distribution

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

excel_photo-0.1.0-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

File details

Details for the file excel_photo-0.1.0.tar.gz.

File metadata

  • Download URL: excel_photo-0.1.0.tar.gz
  • Upload date:
  • Size: 7.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.5

File hashes

Hashes for excel_photo-0.1.0.tar.gz
Algorithm Hash digest
SHA256 72f4b366394c368000a84c25b2f2a785a6d3e0d77f72813db8f61d31c88f96c0
MD5 6cae2295fe52fec231c47c7e1d37c9b7
BLAKE2b-256 aa3087f4461cb122833eb71fbc9d520d07b1294c7d031b463d0c9d0dcb82e952

See more details on using hashes here.

File details

Details for the file excel_photo-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: excel_photo-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.5

File hashes

Hashes for excel_photo-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1d55c4e90c2d46146dda5104e01dfc31c8625f8f0b1a4a7b458d7341692cb4db
MD5 720a7d89da7bbce2bd06dde890c4f9fc
BLAKE2b-256 c9c7ae2d661f87cdd6a164f47c2bb4ae6dd660a8784a024ed217b095380628b6

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 Sentry Error logging StatusPage Status page