I'm trying to use the pst-barcode package to create a vcard contained in a qrcode, and I was surprised to see that a vcard that was working with another programming language to generate my qrcode was not working with this package.
After investigation, it turns out that the problem was caused by psbarcode: after the first (and only the first!) use of left and right parentheses, a newline is created (instead of the first space after the right parenthesis).
(If it could help: I also found out that using a left parenthesis without the right one after just returned a blank qrcode)
Here is my current code:
\begin{pspicture}(25mm,25mm)
\begingroup
% The following def are used to solve a previous problem as
% there were "penalty @M" added for this characters
\def:{\string:}%
\def;{\string;}%
\psbarcode{%
MECARD:N:Doe,John;TEL:+1 (234) 567-8910;EMAIL:john@doe.com;;%
}{eclevel=L width=1.161 height=1.161}{qrcode}
\endgroup
\end{pspicture}
I know that we need, in general, to define a number without space and other characters in a vcard, but here I need it that way, and I think that it could be useful for other situations when we need to have parentheses in a vcard.
An other piece of information that could be useful: my current version of pst-barcode has this filedate : \def\filedate{2011/03/10}
Note: Using ^040 and ^041 instead of ( and ) and the parse option also solves the problem.
The new problem encountered after this correction is linked to the charset. Here is the second barcode I have :
\psbarcode{%
BEGIN:VCARD^^J%
N:Doé;John^^J%
TEL;WORK:+1 ^040234^041 567-8910^^J%
EMAIL:john@doe.com^^J%
END:VCARD%
}{eclevel=L width=1.161 height=1.161 parse}{qrcode}
It seems that the returned element is not readable by all barcode readers, but if I remove the accent, it works well. The reader was tested with others utf-8 encoded barcodes, and the returned value was correct.
I tried to use an UTF-8 BOM (^239^187^191) but it was not working.
