معرفی شرکت ها


ezprinting-0.3.0


Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر
Card image cap
تبلیغات ما

مشتریان به طور فزاینده ای آنلاین هستند. تبلیغات می تواند به آنها کمک کند تا کسب و کار شما را پیدا کنند.

مشاهده بیشتر

توضیحات

Python package to easily print to a printer configured on either a CUPS server or Google Cloud Print.
ویژگی مقدار
سیستم عامل -
نام فایل ezprinting-0.3.0
نام ezprinting
نسخه کتابخانه 0.3.0
نگهدارنده []
ایمیل نگهدارنده []
نویسنده Marcelo Bello
ایمیل نویسنده -
آدرس صفحه اصلی https://github.com/mbello/ezprinting
آدرس اینترنتی https://pypi.org/project/ezprinting/
مجوز MIT
# ezprinting ## IMPORTANT NOTE! As of version 0.3, support for GCP has been removed (Google announced that Google Cloud Print service will be discontinued at the end of 2020). ## Description Python package to easily submit print jobs to a printer configured on a CUPS server. ## Installation ## pip install ezprinting or poetry add ezpriting pyCups is a dependency which needs libcups2-dev (this is the name on Ubuntu/Debian) to be installed (sudo apt install libcups2-dev). ## Quick Start Guide ## **Note:** success=True/False in the examples below indicate whether or not the print job was successfully submitted to CUPS, not that it was successfully printed. ### 1. Option one: ``` from ezprinting import PrintJob with open('dummy.pdf', 'rb') as f: content = f.read() # Use host="cups.domain.tld:631", username="lpadmin", password="123456" to specify # a remote cups server with authentication. # By default "localhost:631" is assumed with blank user/passwd pjob = PrintJob.new_cups(printer_name='cups-printer-name', content=content) success = pjob.print() ``` If **content** is PDF, there is no need to specify content_type. Auto detection of content-type is not available yet, if you skip content_type than "application/pdf" is assumed. ### 2. Option two: ``` from ezprinting import PrintServer, Printer, PrintJob import json with open('dummy.pdf', 'rb') as f: content = f.read() # If we want CUPS on localhost... print_server = PrintServer.cups() # If we want remote CUPS server... print_server = PrintServer.cups(host="cups.domain.tld:631", username="lpadmin", password="123456") connection_ok, message = print_server.test_connection() print("Testing connection: {} - {}".format(connection_ok, message)) # Let's check what printers we have available if connection_ok: printers = print_server.get_printers() print(json.dumps(printers, sort_keys=True, indent=4)) printer = Printer(print_server, 'printer name (CUPS) or printer ID (GCP)') printer_exists = printer.check_printer_exists() print("Does the printer exist on that print server? {}".format(printer_exists)) if printer_exists: pjob = PrintJob(printer=printer, content=content) success = pjob.print() print('Print job submitted with success? {}'.format(success)) if success: print('Print job id: {}'.format(pjob.job_id)) ``` ## Testing You can easily test the functionality of this package by making use of the built in test code. To test CUPS functionality you must have a valid *tests/private_data/cups.json*. To define the documents you want to test print and the printers where those documents should be test printed you must have the files: * tests/private_data/printers.json * tests/data/print_tests.json Commented sample json files are provided (do not forget to delete the comments, JSON does not support comments). ## State of this package The code in this repository is being used in production and mostly works. However, it is very new and does not handle well exceptional cases. A large piece that is still missing is functionality on the PrintJob class to track the lifecycle of a print job and being able to figure out what went wrong when something goes wrong (e.g. paper jam, out of paper, out of ink, etc). Your help is welcome to fill in the gaps. And please, do file bug reports. ## Main TO-DOs * [ ] Develop functionality on the PrintJob class to track the state of a print job and identify causes of failure (e.g. jam, out of paper, out of ink, etc) * [ ] Enable printing directly to IPP printers; * [ ] Add-on: mqtt monitor to send print jobs received on mqtt topics, with full QoS implementation; **Feel free to help fill-in the gaps!** ## Other notes * pycups <=1.9.73 has a bug that prevents CUPS from working. You will see a filter failed or some kind of "document corrupted" message;


نیازمندی

مقدار نام
>=1.9.74 pycups


زبان مورد نیاز

مقدار نام
>=3.6 Python


نحوه نصب


نصب پکیج whl ezprinting-0.3.0:

    pip install ezprinting-0.3.0.whl


نصب پکیج tar.gz ezprinting-0.3.0:

    pip install ezprinting-0.3.0.tar.gz