From 87a5f52ae2dab82d77786507a66dacd54effafcf Mon Sep 17 00:00:00 2001 From: Joscha Date: Sun, 5 May 2019 12:33:49 +0000 Subject: [PATCH] Update readmes and add examples --- README.md | 7 +++++++ shape/README.md | 8 ++++++++ shape/examples/shape.png | Bin 0 -> 12742 bytes 3 files changed, 15 insertions(+) create mode 100644 shape/examples/shape.png diff --git a/README.md b/README.md index 0cf074a..a1afecc 100644 --- a/README.md +++ b/README.md @@ -7,3 +7,10 @@ A small collection of various little scripts that mostly do nothing. [Link](visualize/) Visualize files by displaying their bytes as pixels. + +## Shape + +[Link](shape/) + +Convert source files to images with syntax highlighting. Each character gets +one pixel. diff --git a/shape/README.md b/shape/README.md index 1da58be..30c01c0 100644 --- a/shape/README.md +++ b/shape/README.md @@ -2,3 +2,11 @@ A similar idea to [visualize](../visualize/), but converts text files to pngs (with syntax highlighting support for various languages). + +It uses [Pillow](https://pypi.org/project/Pillow/) and +[Pygments](https://pypi.org/project/Pygments/). + +## Examples + +The program's own source code +![shape source code](examples/shape.png) diff --git a/shape/examples/shape.png b/shape/examples/shape.png new file mode 100644 index 0000000000000000000000000000000000000000..0bc5008ab7f06fa96b05b6c84ec4b05199743b1b GIT binary patch literal 12742 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 literal 0 HcmV?d00001