LEADTOOLSバーコード(Leadtools.Barcodeアセンブリ)

フレームを表示

SetDataメソッド








このバーコードのデータを指定するByteの配列。nullVisual BasicではNothing)の値が、使われることができます。
生のbyte配列としてこのバーコードのデータを設定します。
構文
public virtual void SetData( 
   byte[] data
)
'Declaration
 
Public Overridable Sub SetData( _
   ByVal data() As Byte _
) 
'Usage
 
Dim instance As BarcodeData
Dim data() As Byte
 
instance.SetData(data)
public virtual void SetData( 
   byte[] data
)
@property (nonatomic, strong, nullable) NSData *data
public void setData(byte[] data)
 function Leadtools.Barcode.BarcodeData.SetData( 
   data 
)
public:
virtual void SetData( 
   array<byte>^ data
) 

パラメーター

データ
このバーコードのデータを指定するByteの配列。nullVisual BasicではNothing)の値が、使われることができます。
解説

読み取りバーコード

BarcodeReader.ReadBarcodeまたはBarcodeReader.ReadBarcodesメソッドは、バーコードを読むのに用いられるか、もっとimageからです。これらのメソッドの各々は、見つけられる各々のバーコードのために、オブジェクトまたは型BarcodeDataのオブジェクトの配列を返します。各々のオブジェクトの中に、バーコードのデータは、GetDataメソッドでアクセスできる生のbyte配列として保存されます。データの形式は、バーコード体系(型)に依存します。

プロパティは、データの文字列表現(ASCIIテキストの通りの)を格納します。このプロパティの値は、単にGetDataから返されるbyte配列のASCII文字列です。

バーコードの書き込み

BarcodeWriter.WriteBarcodeメソッドは、バーコードをimageへ書き込むのに用いられます。BarcodeDataのインスタンスを作成して、このメソッドにそれを渡す前に、そのメンバを塗りつぶします。byte配列としてバーコードの生データを設定するために、SetDataメソッドを使います。ASCII stringとしてデータを設定するために、プロパティを使うこともできます。

QRとPDF417などの一部のバーコードでは、必ずしもASCIIテキストではないデータもサポートされています。たとえば、画像、URL、生のバイトストリームなどです。読むとき、これらのバーコードについては、プロパティはデータの正確な表現を返さないかもしれません。代わりに、BarcodeData.GetDataメソッドを使って、それから解析します。また、バーコードを書き込むとき、SetDataメソッドを用いて生データを設定しなければなりません

オーストラリアのポストバーコード(BarcodeSymbology.AustralianPost4State)stringは、様々なフィールド(すなわちFCC、DPIDとCIF)を識別するために、特別な形式を持っています。この文字列形式では、以下のようにフィールドの間にダッシュが入ります。FCCは2桁のフィールド(有効な値は11、87、45、92、59、62、44)、DPIDは住所を表す8桁のフィールドで、CIF(オプション)は顧客情報フィールドを表します。詳細は、「標準」を参照してください。この文字列形式は、両方の読み書きのために適用します。

GS1 Databar Expanded(BarcodeSymbology.GS1DatabarExpanded)とGS1 Databar Expanded Stacked(BarcodeSymbology.GS1DatabarExpandedStaceked)バーコード文字列は、特定のエンコーディングメソッド(例えばメソッド「1」、メソッド「0100」、メソッド「0101」)を示す文字列形式に従って書き込まれる必要があります … 例えば、その他string(01)00012345678905(10)ABC123」は、メソッド「1」(すなわち一般識別データ)を用いてエンコードされます。品目識別番号の14桁目(前の例では"5")が存在する場合、その桁はチェックデジットとみなされ、無視されます。これらの特殊なエンコード形式のいずれにも従わずに文字列を書き込んだ場合は、方法「00」(多目的データ)でエンコードされます。

読み取り操作によってBarcodeDataが返されるとき、リンケージビットを示すために、文字列の先頭に波カッコ("{"と"}")で囲まれた桁が付加されます。中括弧はエンコードされたバーコードデータの一部でありません、そして、標準で定義されません。むしろ、つながり数字を他のデータと区別します。たとえば、リンケージビットがゼロに設定される間バーコードがstring「(01)00012345678905(10)ABC123」で書き込まれるならば、読まれた関数結果は「{0}(01)00012345678905(10)ABC123」であるでしょう、そこで、{0}、数字と残りの文字がそうであるだろうつながりはバーコードデータです。

派生型

一部のバーコード体系には、BarcodeDataにない付加情報が含まれています。このようなバーコード体系に対応するため、LEADTOOLSには付加情報を含む派生クラスが追加されています。詳細については、「BarcodeData」を参照してください。

サンプル

このサンプルは、生データを使用してバーコードをimageへ書き込みます。

Copy Code  
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.Forms
Imports Leadtools.Barcode
Imports Leadtools.ImageProcessing

      
Public Sub BarcodeData_SetDataExample()
   Dim outFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "MyBarcode.tif")
   ' This is UPC data to save a a string
   Dim dataString As String = "01234567890"
   ' Get it as a byte array to use in this example
   Dim bytes() As Byte = Encoding.ASCII.GetBytes(dataString)

   ' Create a BarcodeData object from this data
   Dim data As New BarcodeData()
   data.Symbology = BarcodeSymbology.UPCA
   data.Bounds = New LogicalRectangle(0, 0, 400, 200, LogicalUnit.Pixel)

   ' Set the data
   data.SetData(bytes)

   ' Write it to an image
   Dim engine As New BarcodeEngine()
   Using codecs As New RasterCodecs()
      Dim resolution As Integer = 300
      Dim pixels As LeadRect = data.Bounds.ToRectangle(resolution, resolution)
      Using image As RasterImage = RasterImage.Create(pixels.Width, pixels.Height, 1, resolution, RasterColor.FromKnownColor(RasterKnownColor.White))
         engine.Writer.WriteBarcode(image, data, Nothing)

         codecs.Save(image, outFileName, RasterImageFormat.Tif, 1)
      End Using
   End Using
End Sub

Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Forms;
using Leadtools.Barcode;
using Leadtools.ImageProcessing;

      
public void BarcodeData_SetDataExample()
{
   string outFileName = Path.Combine(LEAD_VARS.ImagesDir, @"MyBarcode.tif");
   // This is UPC data to save a a string
   string dataString = "01234567890";
   // Get it as a byte array to use in this example
   byte[] bytes = Encoding.ASCII.GetBytes(dataString);

   // Create a BarcodeData object from this data
   BarcodeData data = new BarcodeData();
   data.Symbology = BarcodeSymbology.UPCA;
   data.Bounds = new LogicalRectangle(0, 0, 400, 200, LogicalUnit.Pixel);

   // Set the data
   data.SetData(bytes);

   // Write it to an image
   BarcodeEngine engine = new BarcodeEngine();
   using(RasterCodecs codecs = new RasterCodecs())
   {
      int resolution = 300;
      LeadRect pixels = data.Bounds.ToRectangle(resolution, resolution);
      using(RasterImage image = RasterImage.Create(pixels.Width, pixels.Height, 1, resolution, RasterColor.FromKnownColor(RasterKnownColor.White)))
      {
         engine.Writer.WriteBarcode(image, data, null);

         codecs.Save(image, outFileName, RasterImageFormat.Tif, 1);
      }
   }
}

static class LEAD_VARS
{
public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Barcode;
using Leadtools.ImageProcessing;

      
public async Task BarcodeData_SetDataExample()
{
   string outFileName = @"MyBarcode.tif";
   // This is UPC data to save a a string
   string dataString = "01234567890";
   // Get it as a byte array to use in this example
   byte[] bytes = Encoding.UTF8.GetBytes(dataString);

   // Create a BarcodeData object from this data
   BarcodeData data = new BarcodeData();
   data.Symbology = BarcodeSymbology.UPCA;
   data.Bounds = LeadRectHelper.Create(0, 0, 400, 200);

   // Set the data
   data.SetData(bytes);

   // Write it to an image
   BarcodeEngine engine = new BarcodeEngine();
   using(RasterCodecs codecs = new RasterCodecs())
   {
      int resolution = 300;
      LeadRect pixels = data.Bounds;
      using(RasterImage image = RasterImage.Create(pixels.Width, pixels.Height, 1, resolution, RasterColorHelper.FromKnownColor(RasterKnownColor.White)))
      {
         engine.Writer.WriteBarcode(image, data, null);

         StorageFile saveFile = await Tools.AppLocalFolder.CreateFileAsync(outFileName);
         await codecs.SaveAsync(image, LeadStreamFactory.Create(saveFile), RasterImageFormat.Tif, 1);
      }
   }
}
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Forms;
using Leadtools.Barcode;
using Leadtools.ImageProcessing;
using Leadtools.Examples;

public void BarcodeData_SetDataExample()
{
   // This is UPC data to save a a string
   string dataString = "01234567890";
   // Get it as a byte array to use in this example
   byte[] bytes = Encoding.UTF8.GetBytes(dataString);
   // Create a BarcodeData object from this data
   BarcodeData data = new BarcodeData();
   data.Symbology = BarcodeSymbology.UPCA;
   data.Bounds = new LogicalRectangle(0, 0, 400, 200, LogicalUnit.Pixel);

   // Set the data
   data.SetData(bytes);

   // Write it to an image
   BarcodeEngine engine = new BarcodeEngine();
   RasterCodecs codecs = new RasterCodecs();

   int resolution = 300;
   LeadRect pixels = data.Bounds.ToRectangle(resolution, resolution);
   using(RasterImage image = RasterImage.Create(pixels.Width, pixels.Height, 1, resolution, RasterColor.FromKnownColor(RasterKnownColor.White)))
   {
      engine.Writer.WriteBarcode(image, data, null);

      using (SampleImageStream outputStream = new SampleImageStream("MyBarcode.tif"))
      {
         codecs.Save(image, outputStream, RasterImageFormat.Tif, 1);
      }
   }
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.Forms
Imports Leadtools.Barcode
Imports Leadtools.ImageProcessing

Public Sub BarcodeData_SetDataExample()
  ' This is UPC data to save a a string
  Dim dataString As String = "01234567890"
  ' Get it as a byte array to use in this example
  Dim bytes As Byte() = Encoding.UTF8.GetBytes(dataString)
  ' Create a BarcodeData object from this data
  Dim data As BarcodeData = New BarcodeData()
  data.Symbology = BarcodeSymbology.UPCA
  data.Bounds = New LogicalRectangle(0, 0, 400, 200, LogicalUnit.Pixel)

  ' Set the data
  data.SetData(bytes)

  ' Write it to an image
  Dim engine As BarcodeEngine = New BarcodeEngine()
  Dim codecs As RasterCodecs = New RasterCodecs()

  Dim resolution As Integer = 300
  Dim pixels As LeadRect = data.Bounds.ToRectangle(resolution, resolution)
  Using image As RasterImage = RasterImage.Create(pixels.Width, pixels.Height, 1, resolution, RasterColor.FromKnownColor(RasterKnownColor.White))
    engine.Writer.WriteBarcode(image, data, Nothing)

    Using outputStream As SampleImageStream = New SampleImageStream("MyBarcode.tif")
       codecs.Save(image, outputStream, RasterImageFormat.Tif, 1)
    End Using
  End Using
End Sub
必要条件

ターゲットプラットホーム

参照

参照

BarcodeDataクラス
BarcodeDataメンバ
Symbologyプロパティ
Boundsプロパティ
GetDataメソッド
Valueプロパティ

Leadtools.Barcodeは、バーコードモジュールのライセンスと、解除キーが必要です。詳細は、以下を参照してください。LEADTOOLSツールキット機能