| Age | Commit message (Collapse) | Author | Files | Lines |
|
(#1479)
* Added Data Matrix minimal encoding with multi-ECI and GS1-FNC1 support.
* Added support for MACRO-5 and MACRO-6
* Improved comment
|
|
suggested by Martin Burke of zint (See https://sourceforge.net/p/zint/code/ci/68566fefd2a4623041b0232a5941f8fed1e22018/) (#1459)
Quote of Martin's proposed changes to the spec:
The algorithm can be salvaged to be at least sound by making those changes, e.g. by adding to step e):
"1) If the next character cannot be encoded as X12, switch to ASCII mode and go to step b)."
(and renumbering the following sub-steps). Similarly step f):
"1) If the next character cannot be encoded as EDIFACT, switch to ASCII mode and go to step b)."
|
|
* - added code to suppress the terminator if the capacity of the version is less than 4 bit
- added test case
* - Removed code in MinimalEncoder that added Mode.TERMINATOR (is taken care of in Encoder.terminateBits)
- Removed the corresponding test case
* Updated test cases
* Improved documentation
* Changed documentation to not use an example with an unsupported character encoding
* Improved wording of comment
* - Simplified code
- Added space after comma in several places
* Added support for more character sets supported by CharacterSetECI
* Syntactic enhancements
* Changed instantiation of generic types to diamond style
* Updated documentation of the QR_COMPACT hint to explain the impact of setting the CHARACTER_SET hint .
* Changed whitespace
* Removed comment
* Fixed typos in comments
* Added text cases for KANJI and Shift_JS encoding
* Improved comments on Japanese language test cases
* Fixed bug
* Compacted code slightly
* Whitespace changes
* Deepend indent
|
|
and Shift-JIS) (#1453)
* - added code to suppress the terminator if the capacity of the version is less than 4 bit
- added test case
* - Removed code in MinimalEncoder that added Mode.TERMINATOR (is taken care of in Encoder.terminateBits)
- Removed the corresponding test case
* Updated test cases
* Improved documentation
* Changed documentation to not use an example with an unsupported character encoding
* Improved wording of comment
* - Simplified code
- Added space after comma in several places
* Added support for more character sets supported by CharacterSetECI
* Syntactic enhancements
* Changed instantiation of generic types to diamond style
* Updated documentation of the QR_COMPACT hint to explain the impact of setting the CHARACTER_SET hint .
* Changed whitespace
* Removed comment
* Fixed typos in comments
* Added text cases for KANJI and Shift_JS encoding
* Improved comments on Japanese language test cases
|
|
of in Encoder.terminateBits) (#1452)
* - added code to suppress the terminator if the capacity of the version is less than 4 bit
- added test case
* - Removed code in MinimalEncoder that added Mode.TERMINATOR (is taken care of in Encoder.terminateBits)
- Removed the corresponding test case
* Updated test cases
* Improved documentation
* Changed documentation to not use an example with an unsupported character encoding
* Improved wording of comment
* - Simplified code
- Added space after comma in several places
|
|
* Added experimental version of QR-Code compaction which can be activated via EncodeHintType.QR_COMPACT
* - Changed algorithm from recursive divide and conquer to iterative Dijkstra
- Performed the requested modifications.
* Added better debug output and better documententation of the algorithm
* - Added missing error handling in case of a failing assert
- Fixed typo in the documentation
* Fixed bug that the minimal encoder would fail with an internal error if the string to encode contained only characters from ISO-8859-1 and on or more character that is not defined in any of the ISO-8859 characters sets.
* Added unit tests
* - indented class and method comments
- fixed code indententation
- added vertical spacing in statement lists to separate locical blocks
- added comments to document some numeric constants
- commented out debug logging
- made class ResultNode final and all but the methods called by the
class Encoder private.
* - Fixed indentation and line length
- Improved comments
* Fixed line length
* Improved comments
* - Whitespace and comment style changes
- Replaced string concatentation with StringBuilder.append()
- Replaced Vector with ArrayList
- Made members that are ony modified in the constructor final
- Made other minor changes
* - Made more members final
- replaced assert by throwing an IllegalStateException
* Changed internal data representation to be based on java.util.LinkedList
* Removed uneccessary spaces and comments
* Improved the debug output (now produces a compacted graph)
* - Added code to exclude not supported ECIs
- Fixed regression that bits were incorrectly computed
* - Fixed regression that bits were wrongly computed
- Improved compaction
- added a commented proposal for unit test that makes use of the decoder to validate the encoded bits
* Removed useless comparisons
* Removed commented code
* Optimization: added code to cache the value of LinkedList.size().
* Added more test cases
* - Added support for EncodeTypeHint.CHARACTER_SET
- Added support to encode in all ISO-8859 character sets available on the platform
- Removed code that handles failing asserts
* - Replaced string switch case with HashMap lookup
- Reintroduced asserts
* - Replaced <code> with {@code}
- Changed indentation in comment
- Simplified code
* Improved documentation
* Added comment about decoding compatibility with zxing.
* - Made MinimalEncoder responsible of ensuring that the bits fit in the returned version.
- Removed asserts that throw NPE in case of falure.
* Restricted encoder to use only encodings defined in CharacterSetECI
* Improved clarity and readability of the algorithm and of the datastrutures used.
- Minimizing algorithm is based on immutable edges
- ResultList now contains exaclty one ResultNode per mode and possibly several as before
* Changed unit tests (forgotten in previous push)
|
|
* - Added missing error handling in case of a failing assert
- Fixed typo in the documentation
* Fixed bug that the minimal encoder would fail with an internal error if the string to encode contained only characters from ISO-8859-1 and on or more character that is not defined in any of the ISO-8859 characters sets.
|
|
(#1446)
* fix(core): do not evaluate out of index as white on qrcode mask evaluation
|
|
* Added experimental version of QR-Code compaction which can be activated via EncodeHintType.QR_COMPACT
|
|
|
|
* Fix decoding of FNC1 in AztecCode. Flush buffer to make sure FNC1 is output in the correct
position in the stream.
* Simplify. Flush buffers outside switch, as it happens for all non-error cases anyway.
|
|
* Introduce hint to force specific code set for Code-128 encoding
* Address review comments
* Make character check more readable; address review comments
* Address review comments
Co-authored-by: Gero Schwäricke <gero@schwaericke.email>
|
|
|
|
* rename metadata test files
* implement symbology identifier on ITFReader
* add metadata test
* remove unused code
|
|
* PDF417 Macro: fileId numeric decode; allow Macro only symbol
* PDF417 Macro: additional FormatException unit tests
|
|
|
|
|
|
|
|
* decoder support for symbology identifier metadata
Co-authored-by: Daniel Dehnhard <daniel@dehnhard.it>
|
|
* also decodes inverted barcode on hint
Co-authored-by: Daniel Dehnhard <daniel@dehnhard.it>
|
|
|
|
|
|
|
|
|
|
|
|
* Aztec encoder: add ECI codes according to character set
Added redundant methods to avoid modifying existing tests.
* fix testAztecWriter
- ISO-8859-1 cannot actually encode Euro symbol ('€'); this test case only
passed before because the Decoder wasn't actually doing the bytes→String
decode, but simply round-tripping an unknown byte.
- Add extra test cases for implicit ISO-8859-1 (without ECI code), explicit
ISO-8559-1 (with ECI code), and Shift_JIS
* remove unnecessary conversion between String and byte[] in Aztec EncoderTest and DetectorTest
* Aztec DecoderTest: use constants for charsets
* Aztec Code: remove unnecessary conversion between Charset and Charset.name() strings
* PDF417, QR, DataMatrix: remove unnecessary conversion between Charset and Charset.name() strings
Includes replacing StringUtils.guessEncoding() with .guessCharset(), to return
Charset rather than String.
This change makes the tacit assumption that Shift_JIS charset *will* be
available. There are existing comments suggesting that it might not always
be available… but the existing *tests* assume it will be.
|
|
* decode Aztec FLG(n)
Per https://en.wikipedia.org/wiki/Aztec_Code#Character_set,
FLG(0) → FNC1, FLG(1-6) → ECI identifier
Decode FNC1 as 0x1d (ASCII escape character; same as Code128,
DataMatrix, others)
Not doing anything with ECI yet, but this at least fixes
the mis-synchronization of the bit stream that comes from
ignoring the bits that follow it.
* include ecLevel (percentage) in DecoderResult for Aztec
* Aztec decoder: follow character set indicated by ECI codes
Modeled on PDF417's DecodedBitStreamParser
* add testAztecResultECI and testHighLevelDecode to aztec.decoder.DecoderTest
The latter includes non-ECI, ECI, and mixed test cases.
|
|
params (#1311)
|
|
|
|
|
|
|
|
|
|
|
|
updates
|
|
* rewrite FinderPatternFinder.selectBestPatterns
|
|
* remove duplicate results in processStructuredAppend
* add whitespace
* remove illegal import
|
|
|
|
Code128Writer (#1108)
* Continue in code A when character encodes FNC1-4 in Code128Writer
* FNC1 in codeset A
* Single number also can continue in codeset A
|
|
* support extended characters in Code93Writer
* remove redundancy
* add test for convertToExtended
* thanks for review
* fix comment, use package-private for testing
|
|
|
|
* rewrite datamatrix detector
* comments
* remove unused
* modify test
* fix CI errors
|
|
|
|
|
|
malicious ones
|
|
* fix binary shift cost heuristics
* corrected some indents
|
|
(#1039)
* Check if characters are digits
* Use regex to check if input is valid. Added tests
* Create checkNumeric method
* Remove unused locals, moved attributes to top of class.
* Simplify testcase
* Reduce repeated code
* Fixed indentation
|
|
* Fix QR-code hanzi segment decoder
* remove unicode character
|
|
|
|
|
|
|