Go to file
Michael Elsdörfer d8e60a3194 Support multiple tab positions
I had some trouble understanding how tabs are supposed to work. I'm a ESCPOS newb; that said, here are some changes that make sense to me:

- My T88IIIP that I am working with certainly supports multiple tab positions.
- They are not limited to 16 either.
- It seems unnecessary that for every control(), we generate a command to initialize the tab positions. Now the tab position needs to be explicitly initialized by calling control() with the pos argument. This is a backwards-incompatibility issue.

There may still be some Py3/Py2 issues here, but I wanted to get an opinion first.
2016-08-24 12:07:42 +02:00
.github add version-strings into the module 2016-07-17 19:39:42 +02:00
doc Merge pull request #152 from python-escpos/fix/large-image-printing 2016-08-07 12:22:25 +02:00
src/escpos Support multiple tab positions 2016-08-24 12:07:42 +02:00
test test add test for image-splitting-method 2016-08-07 14:39:58 +02:00
.gitignore move pypy3 to the allowed failures and add hypothesis 2016-08-02 00:10:39 +02:00
.travis.yml travis: configure email-notifications 2016-08-02 16:41:47 +02:00
CHANGELOG.rst DOC update changelog for v2.1.3 2016-08-10 01:30:19 +02:00
CONTRIBUTING.rst DOC improve CONTRIBUTING 2016-04-14 00:16:06 +02:00
COPYING Initial files 2010-02-26 00:54:46 -08:00
INSTALL Updated installation instructions 2013-03-13 23:25:46 -07:00
MANIFEST.in PCKG fix setup.py and improve Manifest 2016-03-11 14:46:36 +01:00
README.rst DOC fix demo-code in README.rst 2016-08-11 11:25:40 +02:00
codecov.yml configure codecov.io 2016-08-02 00:10:39 +02:00
readthedocs.yml configure readthedocs with yml 2016-08-02 18:39:56 +02:00
requirements.txt ADD requirements.txt and requirements to setup.py 2015-11-27 23:13:48 +01:00
setup.cfg SETUP enable build of universal wheels 2016-03-08 20:07:16 +01:00
setup.py move pypy3 to the allowed failures and add hypothesis 2016-08-02 00:10:39 +02:00
tox.ini move pypy3 to the allowed failures and add hypothesis 2016-08-02 00:10:39 +02:00

README.rst

#############################################################
python-escpos - Python library to manipulate ESC/POS Printers
#############################################################

.. image:: https://travis-ci.org/python-escpos/python-escpos.svg?branch=master
    :target: https://travis-ci.org/python-escpos/python-escpos
    :alt: Continous Integration

.. image:: https://www.quantifiedcode.com/api/v1/project/95748b89a3974700800b85e4ed3d32c4/badge.svg
    :target: https://www.quantifiedcode.com/app/project/95748b89a3974700800b85e4ed3d32c4
    :alt: Code issues

.. image:: https://landscape.io/github/python-escpos/python-escpos/master/landscape.svg?style=flat
    :target: https://landscape.io/github/python-escpos/python-escpos/master
    :alt: Code Health

.. image:: https://codecov.io/github/python-escpos/python-escpos/coverage.svg?branch=master
    :target: https://codecov.io/github/python-escpos/python-escpos?branch=master
    :alt: Code Coverage

.. image:: https://readthedocs.org/projects/python-escpos/badge/?version=stable
    :target: http://python-escpos.readthedocs.io/en/latest/?badge=stable
    :alt: Documentation Status


Description
-----------

Python ESC/POS is a library which lets the user have access to all those printers handled
by ESC/POS commands, as defined by Epson, from a Python application.

The library tries to implement the functions provided by the ESC/POS-commandset and supports sending text, images,
barcodes and qr-codes to the printer.

Text can be aligned/justified and fonts can be changed by size, type and weight.

Also, this module handles some hardware functionalities like cutting paper, control characters, printer reset
and similar functions.

Dependencies
------------

This library makes use of:

    * pyusb for USB-printers
    * Pillow for image printing
    * qrcode for the generation of QR-codes
    * pyserial for serial printers

Documentation and Usage
-----------------------

The basic usage is:

.. code:: python

    from escpos.printer import Usb

    """ Seiko Epson Corp. Receipt Printer M129 Definitions (EPSON TM-T88IV) """
    p = Usb(0x04b8,0x0202,0)
    p.text("Hello World\n")
    p.image("logo.gif")
    p.barcode('1324354657687','EAN13',64,2,'','')
    p.cut()

The full project-documentation is available on `Read the Docs <https://python-escpos.readthedocs.io>`_.

Contributing
------------

This project is open for any contribution! Please see CONTRIBUTING.rst for more information.