Commit Graph

55 Commits

Author SHA1 Message Date
TAHRI Ahmed ceb61a78a5 Preliminary support of pos 'line display' printing through Epson printer 2016-11-15 16:24:44 +01:00
Michael 10c589ae8d swap default fragment height to 960 2016-10-04 14:01:26 +11:00
Patrick Kanzler cd38cdf74e Merge pull request #170 from miracle2k/text-encoding
Text encoding
2016-09-29 19:23:54 +02:00
Patrick Kanzler 1b2f509758
use jaconv instead of jcconv for japanese chars
jaconv is available for more Python-versions and seems to be more
professional. Apart from that I added jaconv to the test-requirements
but not the requirements. (If the katakana-stuff really works we can
later add it as a real dependency)
2016-09-27 20:31:39 +02:00
belono a82fefb301 Add support for custom cash drawer kick sequence 2016-09-15 22:54:35 +02:00
Michael Billington 7b68d97f5f test fixes - just case-changes to match code page names, seems to need 'future' pip module 2016-09-13 20:28:54 +10:00
Michael Billington 7a7ea23628 fixes to arguments for _encode_char 2016-09-11 21:08:04 +10:00
Michael Billington 83f926758c adjust order in _encode_char to prioritise ASCII; ' ' is used in the character list to flag characters with no known UTF-8 code, better not encode as these 2016-09-11 21:06:44 +10:00
Michael Billington 9a65945fcd re-work encoder to consult the capabilities database and use custom code pages or python encoder as necessary 2016-09-11 21:03:55 +10:00
Michael Billington d9a6960f07 efficiency improvements for backwards encoding 2016-09-11 20:21:30 +10:00
Michael Billington b5bf1125db reverse the lookup order to correct encoding issues 2016-09-11 17:17:22 +10:00
Michael Billington 2c8bc1180d Merge branch 'text-encoding' of https://github.com/miracle2k/python-escpos into miracle2k-text-encoding 2016-09-11 14:19:34 +10:00
Patrick Kanzler f467cacdd8
improve import capabilities from a submodule
The capabilities are now imported as a submodule from
mike42/escpos-printer-db
fixes #174
2016-09-02 17:13:38 +02:00
Michael Elsdörfer ddc93d7369 Fix byte format() on Python 3. 2016-08-30 18:06:34 +02:00
Michael Elsdörfer c3e3ec5808 Merge branch 'capabilities' into text-encoding 2016-08-30 18:02:40 +02:00
Michael Elsdörfer c850a726cb Fix docstring warnings from QuantifedCode. 2016-08-30 17:55:58 +02:00
Michael Elsdörfer 73ef8c4c0a Write as many characters as possible at once. 2016-08-30 17:39:26 +02:00
Michael Elsdörfer 9aa1335fd2 Improve codepage selection logic. 2016-08-30 17:13:05 +02:00
Michael Elsdörfer 2f89f3fe3a Port to current version of escpos-printer-db. 2016-08-30 17:08:27 +02:00
Michael Elsdörfer 40be69347c Merge branch 'capabilities' into text-encoding 2016-08-30 16:14:22 +02:00
Michael Elsdörfer 58ea206c36 Avoid mutable default argumet. 2016-08-30 16:13:38 +02:00
Michael Elsdörfer b37f4fc8cc Merge branch 'capabilities' into text-encoding 2016-08-30 13:36:53 +02:00
Michael Elsdörfer b92eeed50b Add tests for the profile. 2016-08-30 13:27:48 +02:00
Michael Elsdörfer ea7769f8b2 Merge remote-tracking branch 'origin/development' into capabilities 2016-08-30 13:04:17 +02:00
Michael Elsdörfer 5fa89ff685 Automatically choose correct barcode function.
Tests for barcode function.
2016-08-30 13:02:58 +02:00
Michael Elsdörfer a07f84a5bc Match the current printer-db format. 2016-08-30 12:26:09 +02:00
Michael Elsdörfer 216184f43f Rework capabilities format based on Mike's ideas. 2016-08-27 12:17:35 +02:00
Michael Elsdörfer c7864fd785 Largely rewrite the magic text encoding feature. 2016-08-27 11:28:52 +02:00
Michael Elsdörfer f6ce7e45da Merge branch 'capabilities' into text-encoding 2016-08-26 15:29:31 +02:00
Michael Elsdörfer 3fd1a3de5d A suggested format for defining the code pages. 2016-08-26 15:14:28 +02:00
Michael Elsdörfer 214aa0d363 Fix issue with manually setting the encoding. 2016-08-26 15:14:02 +02:00
Patrick Kanzler cf41069829 Merge branch 'linespacing' of git://github.com/miracle2k/python-escpos into miracle2k-linespacing
Conflicts:
	src/escpos/constants.py
2016-08-26 14:16:06 +02:00
Michael Elsdörfer 632a104219 Fix docstring warning. 2016-08-26 11:59:40 +02:00
Michael Elsdörfer 8b5bc9cf8a Make the Escpos class accept a profile.
This is now used for the block_text function.
2016-08-26 10:41:01 +02:00
Michael Elsdörfer a8574ad9d7 Support loading capabilites YAML into Python classes. 2016-08-26 10:41:01 +02:00
Michael Elsdörfer ed3077f00f Define a capability format in YAML. 2016-08-26 10:41:01 +02:00
Michael Elsdörfer 07d47765aa Allow linespacing reset. Make this the default. 2016-08-26 10:38:36 +02:00
Michael Elsdörfer 854b75be30 Support changing the line spacing. 2016-08-26 10:34:52 +02:00
Michael Elsdörfer df0c874f6e Add constants for sheet mode, colors. 2016-08-26 10:30:29 +02:00
Patrick Kanzler 798893caee
refactor access of private member _img of qrcode
Since version 2.5 python-qrcode allows the direct access of the
PIL-functions. (We require version 4 and above).
Thus, we can simply call qr_img.convert() without accessing the private
member.
This refactoring is identical in functionality.
2016-08-15 23:24:06 +02:00
Patrick Kanzler e8d91a6735
test add type-check for the qr-printing 2016-08-15 23:23:07 +02:00
Patrick Kanzler 340a47d2f6 Merge pull request #152 from python-escpos/fix/large-image-printing
Fix/large image printing
2016-08-07 12:22:25 +02:00
Patrick Kanzler 38f9835931
fix printing of CODE128
The control sequence {A or {B or {C can't be part of the qr code.
For this the user has to supply this sequence.
2016-08-02 15:39:31 +02:00
Patrick Kanzler 87a6647053 fix force-encoding REBASE (contains todos)
* fixed the code of forced-encoding in order to make it work
* extended unittest for forced-encoding
* fixed the constant for Katakana-encoding
2016-08-02 04:42:21 +02:00
Patrick Kanzler f0bdbc4322 doc changelog and todos updated 2016-08-02 04:42:21 +02:00
Patrick Kanzler 0cfedb5706 add automatic codepage-changing
This code is adapted from the works by Frédéric Van der Essen in
pyxmlescpos.
I had to adapt the code completely in order to make it compatible with
modern unicode-handling

Further changes:
* improve text unittests in CLI and MagicEncode with hypothesis
* add feature force_encoding in order to enable old behaviour
* disable cli_text_test (for now)
* fix charcode(): it does now cooperate with the new structure
* remove redundant variable codepage from class Escpos
2016-08-02 04:42:21 +02:00
Patrick Kanzler b0af9e9652 improve restructure charcode-table
restructured the charcode table in order to be more accessible to
programmatic usage
2016-08-02 04:42:21 +02:00
Patrick Kanzler 3546e0c4bb improve the exceptions
also adds a stump for the tests for MagicEncode
2016-08-02 04:42:21 +02:00
Patrick Kanzler 3d98eb8b9c fix file-printer did not flush
The file-printer did not automatically flush and thus behaved
differently to the other printer-classes.
Now the default behaviour is to flush after every call of _raw(). This
can be disabled by calling the file-printer with auto_flush=False.

fixes #106
2016-08-02 04:25:54 +02:00
Patrick Kanzler 2ecf73074c
improve large image printing
images longer than 1024 pixels will be split into multiple fragments.
2016-08-02 00:04:43 +02:00