Class BarcodeSettings
Namespace: Aspose.BarCode.BarCodeRecognition
Assembly: Aspose.BarCode.dll (25.1.0)
主なバーコードデコードパラメータ。認識されたデータに影響を与えるパラメータを含みます。
[XmlSerialization(Name = "Aspose.BarCode.Reader.Properties.BarcodeSettings")]
public sealed class BarcodeSettings
継承
継承されたメンバー
object.GetType(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
プロパティ
AustraliaPost
オーストラリア郵便のデコードパラメータを取得します。
[XmlSerialization(Type = XmlSerializationType.Element)]
public AustraliaPostSettings AustraliaPost { get; }
プロパティ値
ChecksumValidation
1Dおよび郵便バーコードの認識中にチェックサム検証を有効にします。
チェックサムを含む必要があるシンボロジーではデフォルトは「はい」として扱われ、チェックサムが可能な場合は「いいえ」として扱われます。
チェックサムは使用されません: Codabar, PatchCode, Pharmacode, DataLogic2of5
チェックサムが可能: Code39 Standard/Extended, Standard2of5, Interleaved2of5, ItalianPost25, Matrix2of5, MSI, ItalianPost25, DeutschePostIdentcode, DeutschePostLeitcode, VIN
チェックサムが常に使用されます: 残りのシンボロジー
[XmlSerialization(Type = XmlSerializationType.Element)]
public ChecksumValidation ChecksumValidation { get; set; }
プロパティ値
例
このサンプルは、チェックサム検証が認識の品質と結果に与える影響を示しています。
using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.EAN13, "1234567890128"))
{
generator.Save(@"c:\test.png");
}
using (BarCodeReader reader = new BarCodeReader(@"c:\test.png", DecodeType.EAN13))
{
//チェックサム無効
reader.BarcodeSettings.ChecksumValidation = ChecksumValidation.Off;
foreach (BarCodeResult result in reader.ReadBarCodes())
{
Console.WriteLine("バーコード コードテキスト: " + result.CodeText);
Console.WriteLine("バーコード 値: " + result.Extended.OneD.Value);
Console.WriteLine("バーコード チェックサム: " + result.Extended.OneD.CheckSum);
}
}
using (BarCodeReader reader = new BarCodeReader(@"c:\test.png", DecodeType.EAN13))
{
//チェックサム有効
reader.BarcodeSettings.ChecksumValidation = ChecksumValidation.On;
foreach (BarCodeResult result in reader.ReadBarCodes())
{
Console.WriteLine("バーコード コードテキスト: " + result.CodeText);
Console.WriteLine("バーコード 値: " + result.Extended.OneD.Value);
Console.WriteLine("バーコード チェックサム: " + result.Extended.OneD.CheckSum);
}
}
Using generator As New BarcodeGenerator(EncodeTypes.EAN13, "1234567890128")
generator.Save("c:\test.png")
End Using
Using reader As New BarCodeReader("c:\test.png", DecodeType.EAN13)
'チェックサム無効
reader.BarcodeSettings.ChecksumValidation = ChecksumValidation.Off
For Each result As BarCodeResult In reader.ReadBarCodes()
Console.WriteLine("バーコード コードテキスト: " + result.CodeText)
Console.WriteLine("バーコード 値: " + result.Extended.OneD.Value)
Console.WriteLine("バーコード チェックサム: " + result.Extended.OneD.CheckSum)
Next
End Using
Using reader As New BarCodeReader("c:\test.png", DecodeType.EAN13)
'チェックサム有効
reader.BarcodeSettings.ChecksumValidation = ChecksumValidation.On
For Each result As BarCodeResult In reader.ReadBarCodes()
Console.WriteLine("バーコード コードテキスト: " + result.CodeText)
Console.WriteLine("バーコード 値: " + result.Extended.OneD.Value)
Console.WriteLine("バーコード チェックサム: " + result.Extended.OneD.CheckSum)
Next
End Using
DetectEncoding
Unicode コードセットのコーディングを検出するためにエンジンを強制するフラグ。デフォルト値は true です。
[XmlSerialization(Type = XmlSerializationType.Element)]
public bool DetectEncoding { get; set; }
プロパティ値
例
このサンプルは、DetectEncoding が有効な場合にテキストエンコーディングを動的に検出する方法を示しています。
using (MemoryStream ms = new MemoryStream())
{
using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.QR))
{
generator.SetCodeText("Слово", 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("バーコード コードテキスト: " + 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("バーコード コードテキスト: " + result.CodeText);
}
}
Using ms As New MemoryStream
Using generator As New BarcodeGenerator(EncodeTypes.QR, "Слово")
generator.SetCodeText("Слово", System.Text.Encoding.UTF8)
generator.Save(ms, BarCodeImageFormat.Png)
End Using
'Unicode コードセットのエンコーディング検出が有効
ms.Position = 0
Using reader As New BarCodeReader("c:\test.png", DecodeType.Code39, DecodeType.Code128)
reader.BarcodeSettings.DetectEncoding = True
For Each result As BarCodeResult In reader.ReadBarCodes()
Console.WriteLine("バーコード コードテキスト: " + result.CodeText)
Next
End Using
'エンコーディング検出が無効
ms.Position = 0
Using reader As New BarCodeReader("c:\test.png", DecodeType.Code39, DecodeType.Code128)
reader.BarcodeSettings.DetectEncoding = False
For Each result As BarCodeResult In reader.ReadBarCodes()
Console.WriteLine("バーコード コードテキスト: " + result.CodeText)
Next
End Using
End Using
StripFNC
コーディングテキストから FNC1、FNC2、FNC3 文字を削除します。デフォルト値は false です。
[XmlSerialization(Type = XmlSerializationType.Element)]
public bool StripFNC { get; set; }
プロパティ値
例
このサンプルは、FNC 文字を削除する方法を示しています。
using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.GS1Code128, "(02)04006664241007(37)1(400)7019590754"))
{
generator.Save(@"c:\test.png");
}
using (BarCodeReader reader = new BarCodeReader(@"c:\test.png", DecodeType.Code128))
{
//StripFNC 無効
reader.BarcodeSettings.StripFNC = false;
foreach (BarCodeResult result in reader.ReadBarCodes())
{
Console.WriteLine("バーコード コードテキスト: " + result.CodeText);
}
}
using (BarCodeReader reader = new BarCodeReader(@"c:\test.png", DecodeType.Code128))
{
//StripFNC 有効
reader.BarcodeSettings.StripFNC = true;
foreach (BarCodeResult result in reader.ReadBarCodes())
{
Console.WriteLine("バーコード コードテキスト: " + result.CodeText);
}
}
Using generator As New BarcodeGenerator(EncodeTypes.GS1Code128, "(02)04006664241007(37)1(400)7019590754")
generator.Save("c:\test.png")
End Using
Using reader As New BarCodeReader("c:\test.png", DecodeType.Code128)
'StripFNC 無効
reader.BarcodeSettings.StripFNC = False
For Each result As BarCodeResult In reader.ReadBarCodes()
Console.WriteLine("バーコード コードテキスト: " + result.CodeText)
Next
End Using
Using reader As New BarCodeReader("c:\test.png", DecodeType.Code128)
'StripFNC 有効
reader.BarcodeSettings.StripFNC = True
For Each result As BarCodeResult In reader.ReadBarCodes()
Console.WriteLine("バーコード コードテキスト: " + result.CodeText)
Next
End Using