ZXing.Net将字符串编码为CF中的QR码

时间:2012-11-08 13:24:40

标签: c# compact-framework zxing

如何使用ZXing.Net将我的字符串编码为QR码?

我已经可以解码,但在编码方面存在问题。它有一个错误:没有编码器可用于格式AZTEC

这是我的代码:

IBarcodeWriter writer = new BarcodeWriter();
Bitmap barcodeBitmap;
var result = writer.Encode("Hello").ToBitmap();
barcodeBitmap = new Bitmap(result);
pictureBox1.Image = barcodeBitmap;

3 个答案:

答案 0 :(得分:32)

您没有完全初始化BarcodeWriter。您必须设置条形码格式。 请尝试以下代码段:

IBarcodeWriter writer = new BarcodeWriter
{ Format = BarcodeFormat.QR_CODE };
var result = writer.Write("Hello");
var barcodeBitmap = new Bitmap(result);
pictureBox1.Image = barcodeBitmap;

答案 1 :(得分:2)

@ dizzytri99er

似乎我用ZXing.net成功编码了一条消息因此我觉得它确实支持Aztec编码

这是我用过的代码;

    static void Main(string[] args)
    {
        IBarcodeWriter writer = new BarcodeWriter
            {
                Format = BarcodeFormat.AZTEC
            };
        Bitmap aztecBitmap;
        var result = writer.Write("I love you ;)");
        aztecBitmap = new Bitmap(result);

        using (var stream = new FileStream("test.bmp", FileMode.OpenOrCreate, FileAccess.ReadWrite))
        {
            var aztecAsBytes = ImageToByte(aztecBitmap);
            stream.Write(aztecAsBytes, 0, aztecAsBytes.Length);
        }
    }


    public static byte[] ImageToByte(Image img)
    {
        ImageConverter converter = new ImageConverter();
        return (byte[])converter.ConvertTo(img, typeof(byte[]));
    }

答案 2 :(得分:0)

可能是你正在扫描的代码大小吗?

看看here

生成和编码QR码的最佳方法是......

QR code encoderZbar