We are a software company in Austria in the output management business.
As an international operating corporation such we are facing the interesting requirement to encode middle and east european language characters of the
German, Czech and Croatian language into datamatrix symbols.
As we only have limited control over the barcode-reader we do not have the option of encoding our data via UTF-8 or base64.
Therefor I am searching for a standard way to encode Latin-1 (which is the standard encoding of datamatrix) and Latin-2 into our symbols.
Unfortunately there is no out of the box solution supporting a "string in, bitmap out" style encoding supporting ECI that is capable of auto detecting the correct ECI-encoding of every each (text) character.
So I have 2 questions.
First is: Is the code I assembled to produce a symbol correct in the means of datamatrix standard (ISO/IEC16022:2006) and aim-standard (AIM Inc. ITS/04-001)
The code simply adds the character 0xC8 to "some leading text" and creates a symbol out of that.
Code: Select all
var barcodeWriter = new Vintasoft.Barcode.BarcodeWriter ();
barcodeWriter.Settings.Barcode = Vintasoft.Barcode.BarcodeType.DataMatrix;
barcodeWriter.Settings.ProcessSpecialSymbols = true;
var eciCharacterValueItem = NonDataFlags.CreateECICharacter (4);
var encoding = Encoding.GetEncoding (1250); //windows-1250 is Latin-2 equivalent
var bytes = encoding.GetBytes ("Č");
var encodedString = new string (bytes.Select (x => (char)x).ToArray ());
var hacekC = new DataMatrixTextValueItem (encodedString, DataMatrixEncodingMode.Text);
barcodeWriter.Settings.ValueItems = new ValueItemBase[] { new DataMatrixTextValueItem ("some leading text", DataMatrixEncodingMode.Text), eciCharacterValueItem, hacekC };
var outputImage = barcodeWriter.GetBarcodeAsBitmap ();Will there ever be a possibilty to read generated ECI-symbol with todays available barcode readers or Libraries?
I mean I could now of course write some code to decode the above generated symbol and get the correct output for any input string that is in Latin-1 or Latin-2 (even mixed).
But since I do not know how the codes will be processed by our customer in future appliances I would need a standard conformant way of encoding/decoding symbols.
Since I made that code up for myself and I have not found anything comparable I at least need the safety to say:
We are encoding that right and all other problems in reading occur of non-conformant scanners/libraries.
kind regards,
Roman Brandstetter