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.1.tar.gz
(3.5 kB
view hashes)
Built Distribution
Close
Hashes for ascii_canvas-1.2.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a07d68662b22c2cd8653779817d80eeb1e0295021959a851fe600d326e0951bd |
|
MD5 | f941d218c8d9ff0cae950cb6812f5691 |
|
BLAKE2b-256 | 0eb49eea79a7a591aab11ad3ed03013aed90d642cfec2a971c9dd0e35b2a92fb |