ZXing.NET"没有可用于格式的编码器"例外

时间:2017-10-12 21:29:29

标签: c# barcode zxing

我使用ZXing.net来支持从Web服务提供值的条形码编码。我有以下功能,当与BarcodeFormat枚举中使用的大多数可识别的编码格式一起使用时,它可以很好地工作。但是,七个代码(ALL_1D,IMB,MAXICODE,MSI,RSS_14,RSS_EXPANDED,UPC_EAN_EXTENSION)导致" No编码器可用于格式"异常。

这是预期的结果吗?即,这些格式尚不支持?如果它们尚未实现,似乎它们不会被识别(在枚举中找不到)。

public static Bitmap EncodeValueBarcode(string text, BarcodeFormat format, int height)
{
    Bitmap bmp = null;

    var writer = new BarcodeWriter
    {
        Format = format,
        Options = new ZXing.Common.EncodingOptions()
    };
    if (height > 0)
        writer.Options.Height = height;
    if (width > 0)
        writer.Options.Width = width;

    bmp = writer.Write(text);

    return bmp;
}

1 个答案:

答案 0 :(得分:2)

枚举BarcodeFormat用于编码和解码。它包含至少由两者之一支持的每种格式。您获得的错误意味着它所说的内容:该特定格式没有编码器支持。并非每种可以解码的格式都有一个实现的编码器。