ZXing.Net Кодировать строку с QR-кодом в CF
Как я могу кодировать свою строку в QR-код, используя ZXing.Net?
Я уже могу декодировать, но имею проблемы с кодировкой. У этого есть ошибка, которая говорит: никакой кодировщик не доступен для формата AZTEC.
Вот мой код:
IBarcodeWriter writer = new BarcodeWriter();
Bitmap barcodeBitmap;
var result = writer.Encode("Hello").ToBitmap();
barcodeBitmap = new Bitmap(result);
pictureBox1.Image = barcodeBitmap;
Ответы
Ответ 1
Вы не полностью инициализируете BarcodeWriter. Вы должны установить формат штрих-кода.
Попробуйте следующий фрагмент кода:
IBarcodeWriter writer = new BarcodeWriter
{ Format = BarcodeFormat.QR_CODE };
var result = writer.Write("Hello");
var barcodeBitmap = new Bitmap(result);
pictureBox1.Image = barcodeBitmap;
Ответ 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[]));
}
Ответ 3
Возможно, это размер кодов, которые вы сканируете?
посмотрите здесь
Лучший способ генерации и кодирования QR-кодов будет...
QR-кодер и Zbar