Replies: 6 comments 16 replies
-
Perhaps a |
Beta Was this translation helpful? Give feedback.
-
Also #869 might be a good candidate for that JSON based channel. EDIT (by axxel): Just for quicker parsing and centralizing the discussion, here is the gist of this proposal: Add information about the quiet zone, or lack thereof. Something along the lines of "endQuietZoneDetected": "true",
"fullIsoCompliant": "true",
"endQuietZoneLength": "10" or
"cropped": "true" |
Beta Was this translation helpful? Give feedback.
-
Another application might be to provide information about whether or not the encoding has been guessed. Obviously @marcoffee saw a need for this. |
Beta Was this translation helpful? Give feedback.
-
There is some progress to be reported. I added a first draft that provides access to the There are many open questions:
A WIP draft is also available for the CreatorOptions use case. Comments welcome. |
Beta Was this translation helpful? Give feedback.
-
Of those supported by Zint only Grid Matrix (default GB 2312) and
UPNQR (default ISO 8859-2), a QR variant specific to Slovenian banks.
…
Message ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
Just here to provide another choice: There's also some disadvantage:
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
There are a couple of recent request for change or issues that asked for a change in the API:
All of them have in common that they are
Given that there are so many wrappers now that need to be kept in sync, which incurs a substantial maintenance cost, there needs to be a pretty high value added for justifying this, in my opinion. The simple addition of a new
BarcodeFormat::DataBarLimited
constant, that I did recently, already took me a substantial chunk of time. None of the 3 mentioned issues would cross that threshold for me.As mentioned here, this reminded me of the meta data key-value map type data structure in the original Java API that was solving basically this use case. I didn't like that complex API design, though. So my idea would be to use the simplest and most generic channel to communicate this kind of data: a JSON string. Once established, it would completely eliminate any work across the wrappers when adding yet another bit of info. On the down-side, it would require the client code do deal with JSON if they are interested in the "extra" information and could lead to a bifurcation of the API since once we have that, why then not add all the existing bits of data to that JSON string as well?
EDIT: Looking at the current API, I would then in the long run (3.0) move existing members into that JSON channel:
Barcode
:readerInit
,version
and potentially alsoecLevel
andlineCount
ReaderOptions
: obvious candidates aretryCode39ExtendedMode
andeanAddOnSymbol
CreatorOptions
:forceSquareDataMatrix
andreaderInit
.9 votes ·
Beta Was this translation helpful? Give feedback.
All reactions