I think the separator pattern calculation for RSS-14 Stacked / DataBar Stacked may be incorrect:
https://sourceforge.net/p/zint/code/ci/master/tree/backend/rss.c#l570
Per the spec the separator pattern starts with a space, then subsequent modules are initialized based on the colors of the modules above, below and to the left. At the end of the description, the spec also states that the left-most 4 and right-most 4 modules should be light (spaces).
However, you will sometimes get different patterns depending on whether you (a) start the calculation at separator module 5 (leaving separator modules 1 to 4 blank), or whether you (b) start the calculation at module 2 (leaving module 1 blank) and then go back and clear the first 4 modules afterwards.
The code currently uses approach (a), but based on the way the spec reads I suspect that the correct approach is approach (b). Unfortunately the example barcode in the spec ("0001234567890") renders correctly regardless of the approach chosen. An example that renders differently is "0000000000000".
Hi Daniel,
Thank you for looking at this. After some experimentation I have to agree that (b) looks like expected behaviour. I have changed the implementation accordingly. Please let me know if you are happy with this solution and I then I will close this ticket.
Robin.
As the suggested interpretation was implemented and is available in 2.10.0 (and before), am closing this now. Thanks very much for this.