Skip to main content

Create code snippet with pygments and pillow

Project description

https://img.shields.io/pypi/v/code2image.svg

Create code snippet with pygments and pillow.

Install

$ pip install code2image

Basic uses

$ python examples/shadow.py
https://raw.githubusercontent.com/axju/code2image/master/examples/shadow.png

This package was developed to automate some boring image creation process. But it has also a script for some command line fun.

$ code2image --help
usage: code2image [-h] [--kind {simple,shadow,background}]
                  [--imagename IMAGENAME] [--code CODE]
                  [--background BACKGROUND] [--font-size FONT_SIZE]
                  [--font-name FONT_NAME] [--line_pad LINE_PAD]
                  [--line-numbers] [--shadow-color SHADOW_COLOR]
                  [--shadow-dt SHADOW_DT] [--offset OFFSET] [--blur BLUR]
                  [--epilog EPILOG]
                  codefile

Create nice code snippets

positional arguments:
  codefile              The code file

optional arguments:
  -h, --help            show this help message and exit
  --kind {simple,shadow,background}
                        Change the result
  --imagename IMAGENAME
                        The output image
  --code CODE           Code background color
  --background BACKGROUND
                        Image background color
  --font-size FONT_SIZE
                        font size
  --font-name FONT_NAME
                        font name
  --line_pad LINE_PAD   line pad
  --line-numbers        line numbers
  --shadow-color SHADOW_COLOR
                        Shadow color
  --shadow-dt SHADOW_DT
                        Shadow offset
  --offset OFFSET       Border width
  --blur BLUR           Shadow blur
  --scale SCALE         A scale
  --epilog EPILOG       A epilog

To create nice images for instagram:

$ code2image --kind background --scale 1 /pathe/to/code/file

Python examples

from code2image.cls import Code2Image

c2i = Code2Image()

# load the source code from this file
with open(__file__) as f:
    code = f.read()

# create the image with highlighted code
img = c2i.highlight(code)

# save the image
img.save('simple.png')

See the “examples” folder for more.

Development

Clone repo

$ git clone https://github.com/axju/code2image.git

Create virtual environment for linux

$ python3 -m venv venv
$ source venv/bin/activate

or create virtual environment for windows

$ python -m venv venv
$ venv/Scripts/activate

update dev-tools

$ python -m pip install --upgrade wheel pip setuptools twine tox flake8

Install local

$ pip install -e .

Publish the packages

$ python setup.py sdist bdist_wheel
$ twine upload dist/*

Run some tests

$ flake8 code2image
$ python setup.py test
$ python -m unittest discover -v
$ tox

I do not know why, but tox will fail :(

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

code2image-0.0.3.tar.gz (5.4 kB view details)

Uploaded Source

Built Distribution

code2image-0.0.3-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

Details for the file code2image-0.0.3.tar.gz.

File metadata

  • Download URL: code2image-0.0.3.tar.gz
  • Upload date:
  • Size: 5.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.0

File hashes

Hashes for code2image-0.0.3.tar.gz
Algorithm Hash digest
SHA256 7fff19e988f8d08ace6ab104bd85a0fc213b530a70a768028bc08f1a26870324
MD5 5a0e3fb991d43b9b118aa4e8f786e5f2
BLAKE2b-256 a9985ff1dd36e8962e2bb3efe5baf029fc7a1111c8bda3f9afe86b290ed6e5d5

See more details on using hashes here.

File details

Details for the file code2image-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: code2image-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 7.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.0

File hashes

Hashes for code2image-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 86c6fcd4edda20abf1d66d5b5a7c48cf18cb2eb90374be9853732c6b8c696b84
MD5 30641c0cb5c302a526f536c88bb1871b
BLAKE2b-256 fa6457d2275574a9b36cd3ab51fb1e3fccf121f98cca38abcc76b0314fc85f91

See more details on using hashes here.

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