2009-10-23 34 views
8

アクセントとUnicode文字をエンコーディングできるように、UTF-8 QRコードを生成しようとしています。それをテストするユニコードQRコードでのエンコードとデコードの問題

、私は多くの復号化ソリューションを使用しています:

  1. http://zxing.org/w/decode.jspx - また、Androidの
  2. http://www.drhu.org/QRCode/QRDecoder.phpで使用zxingプロジェクト - PHPのデコーダ
  3. http://zbar.sf.net - ZBarバーコードリーダー - オープンソースを埋め込みのためのCプロジェクト

これらはすべて私には常に同じ結果を与えます。

this image works well withユニコード文字を試すことができます。

しかし、QRコードを生成するためにzxingやGoogle Chart APIを使用しようとすると、正しくデコードできません。

私はこれを試してみました:成功せず

  1. http://chart.apis.google.com/chart?cht=qr&chs=200x200&choe=SHIFT_JIS&chl=R%C3%A9my+Hubscher
  2. http://chart.apis.google.com/chart?cht=qr&chs=200x200&choe=ISO-8859-1&chl=R%C3%A9my+Hubscher
  3. http://chart.apis.google.com/chart?cht=qr&chs=200x200&choe=UTF-8&chl=R%C3%A9my+Hubscher

しかし、すべてを。

どうすればいいですか?作業イメージにどのエンコーディングが使用されているか知っていますか?

答えて

10

解決策は、UTF-8でテキストをエンコードし、文字列が実際にUTF-8であることを指定するBOMを追加することです。

ここでそれが動作します:

+1

あなたはそれを解決するためにあなたが正確に何をした説明してくださいもらえますか? –

+0

BOMを追加する必要があります:http://en.wikipedia.org/wiki/Byte_order_mark。文字列の前に '' \ xEF \ xBB \ xBF''を印刷するだけです。 – Natim

+0

このような意味ですか? NSString * qrString = [NSString stringWithFormat:@ "\ xEF \ xBB \ xBF%@"、symbol.data]; symbol.dataは、ZBar SDKがスキャン後に提供する文字列です。 これは私のためにはうまくいきません。 –

関連する問題