On Tue, Aug 4, 2009 at 9:57 PM, Herbert<herber
...@googlemail.com> wrote:
> for DANTE's journal "Die TeXnische Komödie" we need the maxicode
> for the address. The german post expects a 52x52 maxicode with
> a data only in hex numbers. I tried it with current barcode.ps
> A data example is:
> 444541191400F7DC009800005080243F0001414243313233345800%
> 00000000000000000000000000000000C5F04BF66C6E00000000%
> 00000000000000000000000000000000506F737466616368000000%
> 000000000000000000000031323334350000000000446575747363%
> 686520506F73742041470000000000000000000000000000446575%
> 747363686520506F73742041470000000000000000000000202020%
> 446575747363686520506F73742041470000000000000000000000%
> 0000004B42303831352D31000000
> is it possible, to get a maxicode with this mode of data?
> If yes, I'll will update my pst-barcode.
Hi Herbert,
MaxiCode symbols are a fixed size and the BWIPP MaxiCode encoder is
feature complete (except for ECI and Structured Append support) so it
should have no problem encoding any valid data that you wish to throw
at it.
For general purpose data encoding the required mode is either 4 or 5,
depending upon the level of error correction required. When invoking
BWIPP, if you do not specify the mode in the options field that the
most appropriate mode (providing maximal available error correction
for given input) will be automatically selected. Further details are
given here: http://groups.google.com/group/postscriptbarcode/msg/f6e3d2218bb60fa5
The most obvious problem with encoding your data is that it appears to
be too long. The maximum length of mode 4 symbols is 94 codewords and
of mode 5 symbols is 78 codewords. A literal ASCII representation of
the 404 hex digits that you have provided wouldn't fit any mode of
MaxiCode symbol. An ordinal representation of 202 hex values (i.e.
444541191400... => ^068^069^065^025^014^000...) wouldn't fit either.
Are you in possession of any resources describing the German Post
application of MaxiCode that might be useful in determining what the
actual carried byte data for the symbol should be? If you can
determine the bytes for the carrier data then you can invoke BWIPP
similar to the following:
0 0 moveto (^068^069^065^025^014^000...) (parse) maxicode
One final thing that occurs to me: Could it be that the data that you
have provided requires "Structured Append" to encode - this is a
method of chaining multiple symbols together to read as a single data
stream.
*** Added after a bit of further web research:
Could it be that you actually require the Data Matrix rather than
MaxiCode symbology?
Assuming that the hex bytes are encoded as raw data in the symbol then
you could do the following:
0 0 moveto
<444541191400F7DC009800005080243F0001414243313233345800 \
00000000000000000000000000000000C5F04BF66C6E00000000 \
00000000000000000000000000000000506F737466616368000000 \
000000000000000000000031323334350000000000446575747363 \
686520506F73742041470000000000000000000000000000446575 \
747363686520506F73742041470000000000000000000000202020 \
446575747363686520506F73742041470000000000000000000000 \
0000004B42303831352D31000000> (rows=52 columns=52) datamatrix
If it is Data Matrix that you require then please could you provide me
with a good quality scanned image of such a symbol from such a piece
of genuine mail so that I can confirm the actual content using my 2D
scanning equipment.
All the best,
Terry