labelle-org / labelle

Label printing software
Apache License 2.0
23 stars 3 forks source link

Mention cr3ation/dymo-webprint in our documentations #45

Open tomers opened 2 months ago

tomers commented 2 months ago

Following issue #40 , @cr3ation mentioned https://github.com/cr3ation/dymo-webprint. We should review this project, and mention it in our documentation, and possibly in future examples, if we ever create a set of examples.

maresb commented 2 months ago

I think we should see if @cr3ation would be willing to contribute this directly to Labelle. As I mentioned in https://github.com/labelle-org/labelle/issues/16#issuecomment-2068012035 I think this direction of development is very exciting, although I unfortunately have no time to devote to this myself.

It may require a bit of effort to make a sane workflow. In particular, we may consider splitting the labelle.lib, labelle.cli, and labelle.gui modules into separately-installable labelle-lib, labelle-cli, and labelle-gui Python packages, and then add dymo-webprint as labelle-web.

There's also the question of the level of interface. Like maybe a better design would be to make the POST endpoint accept the raw printer commands so that labelle-cli and labelle-gui could be pure clients and print directly to a web-based printer. Then maybe the webservice would be split into a backend consisting of that POST endpoint, plus a frontend which might eventually look similar to labelle-gui. Just thinking out loud here.

cr3ation commented 2 months ago

Feel free to copy whatever code you see fit. The web service is only 75 lines of python and easy to understand.

I'm glad to extend the functionality of the web service as you seem fit. Let me know what argument you want it to support and provide some examples on the commands to send to labelle and I can hopefully figure out the rest.

About two years ago, we did something similar to what @maresb mention as a hobby project for work. A demo can be found on youtube.

Note: We are not mentioning dymoprint in the video due to time limitations (maximum length was 3 min). We made sure to thank dymoprint it in our discussions and in documentation.

Nikongen commented 2 days ago

FYI: I created a very crude web app to create labels with a LabelManager PnP. You can find it here. I reused a few lines out of the cli.py

I had issues calculating the size of the margin for labels with two lines. I do not fully understand how the margin constants are used.