DetectEncoding

BarcodeSettings.DetectEncoding property

エンジンが Unicode コードセットの codetext エンコーディングを検出するように強制するフラグ。デフォルト値は true. です

public bool DetectEncoding { get; set; }

プロパティ値

エンジンが Unicode コードセットの codetext エンコーディングを検出するように強制するフラグ

このサンプルは、DetectEncoding が有効になっている場合に、その場でテキスト エンコーディングを検出する方法を示しています

[C#]
using (MemoryStream ms = new MemoryStream())
{
    using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.QR, "Слово"))
    {
        generator.Parameters.Barcode.QR.CodeTextEncoding = Encoding.UTF8;
        generator.Save(ms, BarCodeImageFormat.Png);
    }
    //Unicode コードセットのエンコーディングが有効になっていることを検出します
    ms.Position = 0;
    using (BarCodeReader reader = new BarCodeReader(ms, DecodeType.QR))
    {
        reader.BarcodeSettings.DetectEncoding = true;
        foreach (BarCodeResult result in reader.ReadBarCodes())
            Console.WriteLine("BarCode CodeText: " + result.CodeText);
    }
    //エンコーディングの検出が無効になっている
    ms.Position = 0;
    using (BarCodeReader reader = new BarCodeReader(ms, DecodeType.QR))
    {
        reader.BarcodeSettings.DetectEncoding = false;
        foreach (BarCodeResult result in reader.ReadBarCodes())
            Console.WriteLine("BarCode CodeText: " + result.CodeText);
    }
}
[VB.NET]
Using ms As New MemoryStream
    Using generator As New BarcodeGenerator(EncodeTypes.QR, "Слово")
        generator.Parameters.Barcode.QR.CodeTextEncoding = System.Text.Encoding.UTF8
        generator.Save(ms, BarCodeImageFormat.Png)
    End Using
    'Unicode コードセットのエンコーディングが有効になっていることを検出します
    ms.Position = 0
    Using reader As New BarCodeReader("c:\test.png", DecodeType.Code39Standard, DecodeType.Code128)
        reader.BarcodeSettings.DetectEncoding = True
        For Each result As BarCodeResult In reader.ReadBarCodes()
            Console.WriteLine("BarCode CodeText: " + result.CodeText)
        Next
    End Using
    'エンコーディングの検出が無効になっています
    ms.Position = 0
    Using reader As New BarCodeReader("c:\test.png", DecodeType.Code39Standard, DecodeType.Code128)
        reader.BarcodeSettings.DetectEncoding = False
        For Each result As BarCodeResult In reader.ReadBarCodes()
            Console.WriteLine("BarCode CodeText: " + result.CodeText)
        Next
    End Using
End Using

関連項目