Commit Graph

81 Commits

Author SHA1 Message Date
Robin Stuart
b3a1b24d18 help the compiler create more efficient code
Patch from Michael <virtual_worlds@gmx.de>
Full text: As usual I have modified only minor things to remove warnigs when compiled as C++ code, have added some const-specifiers where possible to help the compiler create more efficient code and added some static-specifiers to make functions invisible to other modules.
2017-05-29 10:43:47 +01:00
Robin Stuart
a1327cbd0d Bugfix: Insertion of unlatch character in EDIFACT mode will unlatch immediately, not at the end of the 24-bit block
Fixes #60, Ref: ISO para 5.2.8.2.
Bug report thanks to ice4x800@sf
2017-05-14 18:46:43 +01:00
Harald Oehlmann
c52032acb2 Update win c6 makefile and tcl backend to version 2.6.0 2017-05-12 14:16:59 +02:00
Robin Stuart
19ba8a34c4 Update to version 2.6.0 and update copyright to 2017 2017-05-11 21:14:38 +01:00
Robin Stuart
6f4610aa98 Add verbose mode to output debug info without recompiling 2017-04-11 10:05:38 +01:00
Robin Stuart
5acbffff0d Consistently throw an error if data does not fit in specified size symbol
See ticket #57
2017-04-11 09:26:39 +01:00
Robin Stuart
6115a3f8b6 Avoid trying to encode non-EDIFACT characters in EDIFACT mode
Bug report by brunt, revokes commit [dc3626], tickets #44 and #50
2016-11-26 20:10:51 +00:00
Robin Stuart
0dc3b60c2b Counteract inaccuracy of float values in look ahead test
Bug report by brunt, ticket #49
2016-11-26 13:58:54 +00:00
Robin Stuart
08aefa6aea Include string terminator when keeping track of b256 encoded characters
bug report and patch by brunt, ticket #48
2016-11-26 11:38:00 +00:00
Robin Stuart
1d503c54fe Unlatch EDIFACT encodation when buffer is empty
bug report and patch by brunt, ticket #46
2016-11-26 11:28:43 +00:00
Robin Stuart
6af035ba98 Unlatch X12 encodation when there are 2 codewords left in the buffer
bug report by brunt, ticket #45
2016-11-26 11:18:37 +00:00
Robin Stuart
dc36261030 Force unlatch from EDIFACT on illegal character
Bug report and patch by brunt, ticket #44
2016-11-26 09:00:41 +00:00
Robin Stuart
1155683be1 Include last input character in look ahead test
Bug and patch by brunt, ticket #43
2016-11-26 08:44:59 +00:00
Robin Stuart
658cdd7a69 Check for too many codewords after remainder in 144x144 symbols
Bug report and patch by brunt, ticket #42
2016-11-25 20:50:35 +00:00
Robin Stuart
886e789090 Add unlatch if C40/Text buffer is empty
also don't read binary marker beyond end of input

Relates to #38 and #41
2016-11-22 22:03:28 +00:00
Robin Stuart
a0493a0d0c Force flush of last two C40 or Text values in buffer
Relates to #38
2016-11-22 20:24:33 +00:00
Robin Stuart
4ea35b9082 Revert last commit, and use more standard compliant solution 2016-11-19 10:16:10 +00:00
Robin Stuart
1d4cead56e Handle partial C40 or Text buffer properly when using Shift characters
Relates to ticket #38 created by Brunt
2016-11-17 22:32:06 +00:00
Robin Stuart
4561a66067 Add identifiers to error messages
To ease the debug process
2016-10-28 22:40:40 +01:00
Harald Oehlmann
2cf489eac2 Make compile with MS-VC6 2016-09-12 13:24:18 +02:00
Robin Stuart
2c2200a7cb modifications for VS2015, some
additional static/const's and a few bugfixes for HanXin and DotStream.

Patch by Michael <virtual_worlds@gmx.de>
2016-09-05 22:06:50 +01:00
Robin Stuart
9d1c20201d Add ECI encoding 2016-08-16 12:43:41 +01:00
Robin Stuart
804ca24aca Correct bizarre use of isX12()
Bug spotted by Milton Neal
2016-07-25 22:46:26 +01:00
Robin Stuart
118caf10ea Silence debug output 2016-07-23 19:22:12 +01:00
Robin Stuart
c35378acc5 Bugfix: EDIFACT unlatch character not needed for all symbols
Ref: ISO 16022 para 5.2.8.2
Bug reported by Daniel Yang
2016-07-22 16:42:39 +01:00
Robin Stuart
044b827fff Set default start mode (remove compiler warning) 2016-04-30 14:22:23 +01:00
Robin Stuart
f17f10fa7c Replace local concat() and roundup() with C library defaults
Patch by Oxy (Michael) <virtual_worlds@gmx.de>
Ref: https://sourceforge.net/p/zint/mailman/message/34896811/
2016-03-02 21:12:38 +00:00
Harald Oehlmann
0a034fd5ea Re-replace ceilf() by ceil().
ceilf is better but is C99 which is not supported by my MS-VC6 cpmpiler.
I also suppose, we loose friends if we will rely on C99 features.
If someone has a solution to test if ceilf() exists and use it in this case, I have no troubble, but we need a fall-back.
2016-03-02 11:05:22 +01:00
Robin Stuart
5d9ce6f684 Improvements from Oxy patch
Original email reads...
It does not contain any fundamental changes or new functions but a lot of improvements which I have done over time (added several const/static specifiers, replaced repeated if-conditions by if-else, removed some warnings).
2016-02-29 19:42:32 +00:00
Harald Oehlmann
372994d794 Add Data Matrix Rectangular Extension (DMRE) in regular distribution
- add define "DM_DMRE	101" to zint.h as option_3 value
- add option "-dmre" to command line
- add ckeckbutton "Activate DMRE in automatic mode" to qzint
- make dmatrix.c/dmatrix.h aware of option_3 value DM_DMRE and include DMRE in automatic mode
- Use version 2.5 everywere (as already started by Robin)
- common test case for DMRE in automatic mode is numeric input data with 48 digits, which should lead to a symbol of size 8x64
2016-02-27 21:26:52 +01:00
Robin Stuart
77cdf77690 Code format and audit, part 1
Update copyright info, remove unused code, etc.
2016-02-20 09:38:03 +00:00
Robin Stuart
0c42a2473e Revert to UNIX style EOL 2016-02-17 10:52:48 +00:00
Robin Stuart
2e59058615 Avoid possible confusion with Windows error code
Bugfix by Oxy Genic
Ref: https://sourceforge.net/p/zint/mailman/message/34857131/
2016-02-17 10:37:20 +00:00
Robin Stuart
a57001d2ad Improved 'look ahead test' from Annex P 2016-02-13 07:37:24 +00:00
Robin Stuart
6fc43786a1 Improved implementation of Annex P
More closely matches layout of ISO standard for ease of checking and includes corrections
2016-01-16 16:45:08 +00:00
Harald Oehlmann
c120ca49dd DM: Do not double macro character postfix <RS><EOT> 2016-01-04 18:37:34 +01:00
Harald Oehlmann
779894b671 Ticket 12: if(done = 0) corrected 2016-01-04 18:27:53 +01:00
Harald Oehlmann
216eb6c993 Removed DMRE Format 12x48 as it requires special placement algorithm 2015-08-18 14:54:01 +02:00
Harald Oehlmann
b7f9a7a6e4 Changed comment list for placement extension usage matrix sizes 2015-08-18 14:51:40 +02:00
Harald Oehlmann
c86ba22170 Activated row placement wrap-around at the bottom in placement algorithm 2015-08-18 14:50:37 +02:00
Harald Oehlmann
4dc096cd67 Corrected DMRE direct creation with -vers 2015-08-18 14:49:35 +02:00
Harald Oehlmann
30c8df3269 (Patch by Milton Neal) C40/X12 encodation ending rule implemented (may lead to smaller codes) 2015-08-18 14:48:03 +02:00
Harald Oehlmann
bf687fc409 Same functionality but IMHO nicer because special handling only at one place 2015-08-18 14:38:11 +02:00
Harald Oehlmann
66f112098d Patch by Milton Neal: Do not double forelast character, if it does not fit in a C40 encoding and the last character is shifted (reported by Bertram Wirth) 2015-08-18 14:30:09 +02:00
Harald Oehlmann
93fa54a784 Wrong length variable used for x12:
Data "P4022.631.50231>SN2743>4LCA>VOPTIM01US>10D2014/7/28" was a spurious "8" appended.
Fix by Milton Neal and Robin Stuart.
2015-08-18 14:26:24 +02:00
Harald Oehlmann
a0f703f7de Revert last commit: also use GS as FNC1: this must be done in zint framework and not here 2015-08-18 14:09:53 +02:00
Harald Oehlmann
0a36297ae3 DM ECC200 Use GS (ASCII 29) beside "[" as FNC1 separator flag character 2015-08-18 14:08:00 +02:00
Harald Oehlmann
8bf4d5906a Implemented DM ECC200 Macro 05/06 encodation 2015-08-18 14:06:06 +02:00
Harald Oehlmann
1c0066baa9 DMRE: Datamatrix with extended rectangular formats 2015-08-18 13:53:55 +02:00
Benjamin Kunz
d27db1f6e0 unlatch before single ASCII character is required when leaving text encodation. fix for previous revision 2013-05-28 16:23:53 +02:00