KanvasObjectKlick
KanvasObjectKlick allows you to visualize objects with html on a 2D canvas with the desired color, caption (on hover), and image of the object (on click).
Installation
python3 -m pip install --upgrade pip
pip3 install KanvasObjectKlick
Usage
import random
from KanvasObjectKlick import KOKEntity, build_a
keks = []
for i in range(random.randint(3, 50)):
# name/description of object. It will be displayed when the mouse cursor is hovered over.
name_i = f"name_{i}"
# x and y, can be float and any range
coords_i = (random.randint(-1000, 1000)+random.random(), random.randint(-1000, 1000)+random.random())
# RGB color
color_i = (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255))
# instead of None you can use Pillow, OpenCV image or just path to picture file
img_i = None
# Just create KOKEntity
kok = KOKEntity(name=name_i, coords=coords_i, color=color_i, img=img_i)
keks.append(kok)
# It will create `/path/to/out/file.html` file. Just open it in your browser.
build_a(keks, "/path/to/out/file", zip_need=False)
You can also create zip file with zip_need=True. In this case, file /path/to/out/file.zip will be created.
Instead build_a you can use build_b (from KanvasObjectKlick import build_b). It will create zip with no all in one file. This can be useful when there are too many objects (or rather their images).
# ...
from KanvasObjectKlick import build_b
# It will create `/path/to/out/file.zip` file. Just extract it and open `index.html` in your browser.
build_b(keks, "/path/to/out/file", "/path/to/working/dir")
/path/to/working/dir can be any directory. It is needed in order to stack temporary files while working. In the end, there will be no garbage left, everything superfluous will be removed.
Metadata
Release files for KanvasObjectKlick 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| kanvasobjectklick-0.2.0.tar.gz | 7.3 kB | Without provenance | Details for kanvasobjectklick-0.2.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| kanvasobjectklick-0.2.0-py3-none-any.whl | Python 3 | none | any | Details for kanvasobjectklick-0.2.0-py3-none-any.whl |
Total release size: 15.7 kB
Release files / kanvasobjectklick-0.2.0.tar.gz
| Download URL | kanvasobjectklick-0.2.0.tar.gz |
|---|---|
| Size | 7.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
53f8a42273150a95fd68f5837622a4793a653d73841c986160055187da9228c0
|
|
BLAKE2b-256 checksum How to use checksums |
3bbbf8e761eef69dcdf4605f181183642aaf79c2ae03ca1c566338334d6c9aea
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.10
|
Release files / kanvasobjectklick-0.2.0-py3-none-any.whl
| Download URL | kanvasobjectklick-0.2.0-py3-none-any.whl |
|---|---|
| Size | 8.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
850189e7a6a56a3e9cc9c8b6986ba61920be7b50f1a21ccc1a3778d780ef1df7
|
|
BLAKE2b-256 checksum How to use checksums |
38c7290d1f4398431cb74a0f45ea7502b4f73c8efb5d554b75c51826459ff021
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.10
|
Security for KanvasObjectKlick 0.2.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.