U++ framework
Do not panic. Ask here before giving up.

Home » Developing U++ » UppHub » [Barcode] Code128 & EAN13/UPC-A/EAN8 supported
[Barcode] Code128 & EAN13/UPC-A/EAN8 supported [message #39253] Tue, 05 March 2013 23:59 Go to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
2016-01-31 Support for ITF (interleaved 2 of 5) added.

2016-01-22 Attachment updated to accommodate change in UPP library (explicit selection of pick/clone) after introduction of C++11.

==========================

First of all. Sorry to sergeynikitin. I noticed that you already implemented Code128. You are one of the more active U++ contributors, and I fully respect you. I did this a few years back but never took time to polish it, so I just use it myself.

Anyways:
see screenshot for effect. the usage is pretty intuitive. Supports both Draw class and QTF with pretty natural way.

[Updated on: Sun, 31 January 2016 19:18]

Report message to a moderator

Re: [Barcode] Code128 & EAN13 (Superset of UPC-A) supported [message #39254 is a reply to message #39253] Wed, 06 March 2013 00:06 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
index.php?t=getfile&id=4084&private=0
  • Attachment: barcode1.png
    (Size: 12.76KB, Downloaded 2065 times)
Re: [Barcode] Code128 & EAN13 (Superset of UPC-A) supported [message #39256 is a reply to message #39254] Wed, 06 March 2013 13:30 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
Code128 is very compact, and supports full ASCII code set.

EAN13/UPC-A is widely used in retail. It might be desirable to add support for other EAN/UPC variations.

I have no use for other linear barcode.

PDF417 is very interesting, but there is no openly (freely) available documentation. (Unlike Code128 and EAN13 for which all details are available on Wiki). If anybody knows more details about PDF417 and is willing to share, please kindly let me know.

[Updated on: Wed, 06 March 2013 13:32]

Report message to a moderator

Re: [Barcode] Code128 & EAN13 (Superset of UPC-A) supported [message #39263 is a reply to message #39256] Thu, 07 March 2013 06:11 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
Support for UPC-A and EAN8 added.
Re: [Barcode] Code128 & EAN13 (Superset of UPC-A) supported [message #39264 is a reply to message #39263] Thu, 07 March 2013 07:25 Go to previous messageGo to next message
deep is currently offline  deep
Messages: 281
Registered: July 2011
Location: Bangalore
Experienced Member
Hi Lance,

If this is useful for PDF417

http://sourceforge.net/projects/pdf417lib/

http://webpages.charter.net/jtlien/pdfdoc.html

http://grandzebu.net/informatique/codbar-en/pdf417.htm

http://sourceforge.net/projects/pdf417encode/

http://pdf417codec.sourceforge.net/


Warm Regards

Deepak

[Updated on: Thu, 07 March 2013 07:38]

Report message to a moderator

Re: [Barcode] Code128 & EAN13 (Superset of UPC-A) supported [message #39272 is a reply to message #39264] Thu, 07 March 2013 15:14 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
Thank you, Deepak. They are very good. First one is LGPL, so basically we can use it if we keep it as a dll or so. It also allows MPL, it is more relaxed?

Second one has some easily understandable information. It will be more helpful if I decide to implement it myself.

Will take time to go through other links.

Thanks again.

=========================

The 3rd is fantastic! I am glad I asked. Fully appreciated, Deepak.

[Updated on: Thu, 07 March 2013 15:46]

Report message to a moderator

Re: [Barcode] Code128 & EAN13/UPC-A/EAN8 supported [message #40611 is a reply to message #39253] Fri, 23 August 2013 10:03 Go to previous messageGo to next message
Anonymous
hello, gays, I am glad to be here. I know this forum is about barcode, I want you to help me solve my problem. I am going to use this EAN-8, I searched it by google, for I have little knowledge about it, I hope some of you can give me some useful suggestions, and help me know the advantages about it. Thanks a lot!!!
Re: [Barcode] Code128 & EAN13/UPC-A/EAN8 supported [message #40637 is a reply to message #40611] Sun, 25 August 2013 05:05 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
Hi Edgar:

I think EAN8 is just a short version of UPC/EAN. It's particularly good for smaller items, eg, gums, slim version of cigarettes. Other than that, there is not much advantage of it over the regular UPC/EAN. And apparently with 5 digit less, EAN8 is more limit in capacity.
Re: [Barcode] Code128 & EAN13/UPC-A/EAN8 supported [message #40660 is a reply to message #39253] Wed, 28 August 2013 10:57 Go to previous messageGo to next message
Anonymous
hello, there is a source about code 128 and c++, I don't know whether it is useful for you, just check it , try to find what you really want , hope you like it.
Re: [Barcode] Code128 & EAN13/UPC-A/EAN8 supported [message #40794 is a reply to message #40660] Wed, 18 September 2013 04:24 Go to previous messageGo to next message
acimage is currently offline  acimage
Messages: 2
Registered: May 2013
Junior Member
i konw a barcode generating software that can create various of barcodes for you and it is able to integrate into your .net application easily. barcodes created is in high quaility of high and low image resolution.
including Code128 EAN13 UPC-A EAN-8 and other barcode types.
Re: [Barcode] Code128 & EAN13 (Superset of UPC-A) supported [message #40837 is a reply to message #39256] Sun, 22 September 2013 08:58 Go to previous messageGo to next message
Anonymous
hello, glad to reply. I know a good PDF 417 source, share it there. as far as I am concerned, many users think highly of it, so, hope you like it,
Re: [Barcode] Code128 & EAN13 (Superset of UPC-A) supported [message #41206 is a reply to message #40837] Tue, 12 November 2013 17:00 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
Thanks Edgar. But I rarely need anything more than
http://grandzebu.net/informatique/codbar-en/pdf417.htm
from one of deep's previous post at present. For programmers seek to implement PDF417, that's a very good document.


Re: [Barcode] Code128 & EAN13 (Superset of UPC-A) supported [message #41222 is a reply to message #41206] Sat, 16 November 2013 02:12 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
PDF417 support almost completed.

Anybody have document for QR/Data Matrix code available?

Thanks in advance.
Re: [Barcode] Code128 & EAN13 (Superset of UPC-A) supported [message #41224 is a reply to message #41222] Sat, 16 November 2013 11:20 Go to previous messageGo to next message
deep is currently offline  deep
Messages: 281
Registered: July 2011
Location: Bangalore
Experienced Member
Hi

You can get some information from

This is original patent on QR code.
https://www.google.com/patents/US5726435

Specification
http://barcode-coder.com/en/datamatrix-specification-104.htm l

php code
http://barcode-coder.com/en/barcode-php-class-203.html

May be check zint and zxing codebase.


Warm Regards

Deepak
Re: [Barcode] Code128 & EAN13 (Superset of UPC-A) supported [message #41227 is a reply to message #41224] Sat, 16 November 2013 14:18 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
Thank you deep. I prefer not to read code Sad. I was getting stuck in doing the PDF417. There was some minor errors in the otherwise easy to follow documentation(whose link was provided by you), then I decided the Reed-Solomon algorithm might not be interpreted/implemented correctly. I thought I could get some clue from one of the library (whose link also provided by you) . But I ended up decoding barcodes generated by an online generator for given simple inputs to figure it out. Thank God, the basic data (the coefficients) provided in the website seems to be correct.
Re: [Barcode] Code128 & EAN13 (Superset of UPC-A) supported [message #41228 is a reply to message #41227] Sat, 16 November 2013 16:46 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
Cannot wait to share Smile

1. Encoding algorithm for Code128 reimplemented with greedy method
2. Fixed a bug with EAN check digit calculation.
3. There are known bugs/ommission with PDF417 but basically it should work most of the time(90%+?).

Note basic c++11 support (like the ones in VS2012) is required to compile the code.
Re: [Barcode] Code128 & EAN13 (Superset of UPC-A) supported [message #41237 is a reply to message #41228] Sun, 17 November 2013 20:58 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
For those who are interested in QR code, the reference 4 (this ISO specification) and 5 (a brief introduction for a understanding of the code) listed at the bottom of this page might be of some help.
Re: [Barcode] Code128 & EAN13 (Superset of UPC-A) supported [message #41238 is a reply to message #41237] Mon, 18 November 2013 01:06 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
Got stuck again.

When I said there were know omissions, one of it in my mind is "Code Word 913 will switch to Octet(AKA byte) only for the next CW(code word)" mentioned in the reference webpage. The author didn't elaborate on it, I assume it should mean:
1. If the current compaction mode is Text, 913 will cause the next codeword be interpreted as literal ASCII value, and the compaction mode for the codeword immediately after remains Text. Chance is, even the submode (UpperCase, LowerCase, Mixed, Punctuation) will be reserved;
2. If the current compaction mode is Byte, there will be no use for 913;
3. If the current compaction mode is Numeric, 913 will cause the next codeword be interpreted as literal ASCII value, and the compaction mode for the codeword immediately after remains Numeric.

If shortest encoding is a goal, it will not be achieved without taking the above into consideration. So I took time to implement above according to my assumption. Too bad, no online decoder will recognize barcode generated if 913-shift-to-Octet sequence existed in the codewords sequence. I was wondering if it's because the information was incorrect(author's mistake), or it wasn't interpreted correctly(my mistake), or it's because of a blind spot in the online decoders(somebody else to blame).

If somebody who has a decent barcode scanner that supports PDF417 could tell me the result of scanning the following barcode, it will be fully appreciated.

index.php?t=getfile&id=4356&private=0

encoded text: ABCDEFâABCDEFGHIJKL
codeword sequence: 14 1 63 125 913 195 913 162 1 63 125 187 249 311 509 563 with the last 2 being error correction code words.
  • Attachment: screen.png
    (Size: 0.71KB, Downloaded 2113 times)
Re: [Barcode] Code128 & EAN13 (Superset of UPC-A) supported [message #41244 is a reply to message #41238] Mon, 18 November 2013 07:20 Go to previous messageGo to next message
deep is currently offline  deep
Messages: 281
Registered: July 2011
Location: Bangalore
Experienced Member
Hi,

I used PDF417.mobi on android.

Its not reading your image. It can read other PDF417 images available on net.

Your String is not converted properly by other two softwares.

http://grandzebu.net/informatique/codbar-en/pdf417.htm
http://www.bcgen.com/pdf417-barcode-creator.html

your String
ABCDEFâABCDEFGHIJKL

Both convert to image which reads as
ABCDEF CDEFGHIJKL

Mostly string is not properly encoded by softwares.



Warm Regards

Deepak
Re: [Barcode] Code128 & EAN13 (Superset of UPC-A) supported [message #41250 is a reply to message #41244] Tue, 19 November 2013 03:02 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
Hi Deepak:

Thanks for the feedback. UTF string might be interpreted differently in other encoding. Let's try a different example this time:

index.php?t=getfile&id=4357&private=0

Text encoded: 0123456789012A0123456789012
Codewords sequence excluding error correction:902 15 386 694 721 112 913 65 15 386 694 721 112
  • Attachment: screen.png
    (Size: 0.55KB, Downloaded 1832 times)
Re: [Barcode] Code128 & EAN13 (Superset of UPC-A) supported [message #41251 is a reply to message #41250] Tue, 19 November 2013 03:24 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
And by the way, if I take away the 913-shift-to-octet patch, which is essentially the version in the BarcodeTest.zip posted on Nov. 16, the barcode generated can be readily accepted by http://online-barcode-reader.inliteresearch.com/. In its UTF version, exact same string is displayed. We can do without the 913-shift thing to be safe. All type of data will be properly encoded, only the encoding might not be optimum.
Re: [Barcode] Code128 & EAN13 (Superset of UPC-A) supported [message #41254 is a reply to message #41251] Thu, 21 November 2013 04:24 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
Here is a more authoritative reference:
http://www.expresscorp.com/content/express/pdf/IndustrySpeci fications/USS-PDF-417.pdf

Turns out 913 can only be used within Text Mode to shift to byte compaction for the next codeword, and then the original Text submode is restored. I don't see a reason why 913-shift is not allowed in Numeric context, but according the the standard, barcode for this text ( ABCDEFâABCDEFGHIJKL) is correct even though most online decoders don't recognize it. And barcode associated with this text (0123456789012A0123456789012) is indeed invalid.

I have added Truncated pdf417 and some other functionalities. In order not to waste too much resources, I'll just keep it. Maybe until I at least make some progress on QR code.
Re: [Barcode] Code128 & EAN13/UPC-A/EAN8 supported [message #41352 is a reply to message #39253] Tue, 03 December 2013 10:18 Go to previous messageGo to next message
makaveiljojo is currently offline  makaveiljojo
Messages: 1
Registered: December 2013
Junior Member
Thanks for all sharings. I was using a free online EAN8 generator that i wanna share too. It works very conveniently.
Re: [Barcode] Code128 & EAN13/UPC-A/EAN8 supported [message #42369 is a reply to message #41352] Mon, 10 March 2014 07:32 Go to previous messageGo to next message
Nana111 is currently offline  Nana111
Messages: 1
Registered: March 2014
Junior Member
makaveiljojo wrote on Tue, 03 December 2013 10:18

Thanks for all sharings. I was using a free online EAN8 generator that i wanna share too. It works very conveniently.

HI there
Thanks for your barcode sharing.I am exactly looking a free online barcode generator.I hope it is possible for my barcode generator to generate code 128 and upc-a at the same time.Is that ok?
Re: [Barcode] Code128 & EAN13/UPC-A/EAN8 supported [message #45900 is a reply to message #39253] Fri, 22 January 2016 15:11 Go to previous messageGo to next message
Giorgio is currently offline  Giorgio
Messages: 218
Registered: August 2015
Experienced Member
Hi there,
if someone download this library and has issues compiling it, namely the following error:

Barcode\Code128.cpp(701): error C2280: 'Upp::Vector<Upp::byte> &Upp::Vector<Upp::byte>::operator =(const Upp::Vector<Upp::byte> &)': trying to reference a deleted function


you have to read here to fix it.
Regards,
Gio
Re: [Barcode] Code128 & EAN13/UPC-A/EAN8 supported [message #45901 is a reply to message #45900] Fri, 22 January 2016 16:14 Go to previous messageGo to next message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
Thanks, Giorgio. Attachment has been updated. See the first post.
Re: [Barcode] Code128 & EAN13/UPC-A/EAN8 supported [message #45958 is a reply to message #45901] Sun, 31 January 2016 19:19 Go to previous message
Lance is currently offline  Lance
Messages: 656
Registered: March 2007
Contributor
Support for Interleaved 2 of 5 code added.
Previous Topic: New package OpenMP_demo
Next Topic: OpenCascade package
Goto Forum:
  


Current Time: Sat Aug 01 03:41:02 GMT+2 2026

Total time taken to generate the page: 0.01393 seconds