Adding README and improving the CLI

This commit is contained in:
Philipp Klaus 2016-11-20 15:10:07 +01:00
parent 820a6929c9
commit 24092aa9bc
2 changed files with 34 additions and 6 deletions

27
README.md Normal file
View File

@ -0,0 +1,27 @@
### brother\_ql\_web
This is a web service to print labels on Brother QL label printers.
It offers:
* an API at */api/print/text/Your_Text?font_size=100&font_family=Minion%20Pro&font_style=Semibold*
to print a label containing 'Your Text' with the specified font properties.
Here's its command line interface:
usage: brother_ql_web.py [-h] [--port PORT] [--loglevel LOGLEVEL]
[--font-folder FONT_FOLDER]
[--model {QL-500,QL-550,QL-560,QL-570,QL-580N,QL-650TD,QL-700,QL-710W,QL-720NW,QL-1050,QL-1060N}]
printer
positional arguments:
printer String descriptor for the printer to use (like
tcp://192.168.0.23:9100 or file:///dev/usb/lp0)
optional arguments:
-h, --help show this help message and exit
--port PORT
--loglevel LOGLEVEL
--font-folder FONT_FOLDER
folder for additional .ttf/.otf fonts
--model {QL-500,QL-550,QL-560,QL-570,QL-580N,QL-650TD,QL-700,QL-710W,QL-720NW,QL-1050,QL-1060N}
The model of your printer (default: QL-500)

View File

@ -1,10 +1,7 @@
#!/usr/bin/env python #!/usr/bin/env python
""" """
This is a web server to print labels. This is a web service to print labels on Brother QL label printers.
Go to [/api/print/text/Your_Text](/api/print/text/)
to print a label (replace Your_Text with your text).
""" """
import sys, logging, socket, os, subprocess, functools import sys, logging, socket, os, subprocess, functools
@ -39,7 +36,11 @@ DEFAULT_FONTS = [
@route('/') @route('/')
def index(): def index():
return markdown.markdown(__doc__) INDEX_MD = __doc__ + """
Go to [/api/print/text/Your_Text](/api/print/text/)
to print a label (replace `Your_Text` with your text).
"""
return markdown.markdown(INDEX_MD)
def get_fonts(folder=None): def get_fonts(folder=None):
""" """
@ -172,7 +173,7 @@ def print_text(content=None):
def main(): def main():
global DEBUG, FONTS, DEFAULT_FONT, MODEL, BACKEND_CLASS, BACKEND_STRING_DESCR global DEBUG, FONTS, DEFAULT_FONT, MODEL, BACKEND_CLASS, BACKEND_STRING_DESCR
import argparse import argparse
parser = argparse.ArgumentParser() parser = argparse.ArgumentParser(description=__doc__)
parser.add_argument('--port', default=8013) parser.add_argument('--port', default=8013)
parser.add_argument('--loglevel', type=lambda x: getattr(logging, x.upper()), default='WARNING') parser.add_argument('--loglevel', type=lambda x: getattr(logging, x.upper()), default='WARNING')
parser.add_argument('--font-folder', help='folder for additional .ttf/.otf fonts') parser.add_argument('--font-folder', help='folder for additional .ttf/.otf fonts')