Treat strings like Items on a 2D Canvas.
Project description
Treat strings like Items on a 2D Canvas
With this primitive library you can do things like this:
from ascii_canvas.canvas import Canvas
from ascii_canvas.item import Item, Line
canvas = Canvas()
rect_a = Item('+-----+\n|Hello|\n+-----+', position=[0, 0])
rect_b = Item('+-----+\n|World|\n+-----+', position=[16, 5])
rect_c = Item('+-+\n|!|\n+-+', position=[32, 0])
line_a = Line(start=[7, 1], end=[15, 6])
line_b = Line(start=[23, 6], end=[31, 1])
canvas.add_item(rect_a)
canvas.add_item(rect_b)
canvas.add_item(rect_c)
canvas.add_item(line_a)
canvas.add_item(line_b)
print(canvas.draw())
Which results in this output:
0+-----+ +-+
1|Hello|----+ +----|!|
2+-----+ | | +-+
3 | |
4 | |
5 | +-----+ |
6 +----|World|----+
7 +-----+
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ascii-canvas-1.2.2.tar.gz
(3.6 kB
view hashes)
Built Distribution
Close
Hashes for ascii_canvas-1.2.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b8b58cc3dd009c7a3d63ee8c8a9e7b823a0b4912e37f246a26338ae2437561ec |
|
MD5 | aee075f0da29848e31a52b5d175d95e1 |
|
BLAKE2b-256 | c7e5a441d81a39e845277ad275820ff7fe82369bcd06a66ae5075229c9e18d46 |