DotNetBarcodeクラスライブラリを使う前に、Visual Studioのメニューより、「プロジェクト」−「参照の追加」を選択します。
次に、「参照」タブボタンを押します。
次に、DotNetBarcodeクラスライブラリである、DotNetBarcode.dllを選択し、「OK」ボタンを押します。
これで、DotNetBarcodeクラスライブラリを使う準備が整いました。
DotNetBarcodeクラスライブラリのオブジェクトは、DotNetBarcodeクラス1つです。
DotNetBarcodeV2.3.0はルート名前空間をSystemですので、Visual Basicの場合は
Imports System
をC#の場合は
using System;
をプログラムのはじめに入れておいてください。
bc1という名前のバーコードオブジェクトを作る場合は以下のように作成します。
【Visual Basicの場合】
Imports System
Dim bc1 As DotNetBarcode = New DotNetBarcode
【C#の場合】
using System;
DotNetBarcode bc1 =new
DotNetBarcode ();
オブジェクトを新規に作成する時に、バーコードのタイプを指定することができます。(オプション)
QRCode=>二次元バーコードの標準。携帯電話などで読み取り可能
Jan13 => JAN(Japan Article Number)の13桁。一般商品に印字され、身近なバーコード。
Jan8 => JAN(Japan Article Number)の8桁。一般商品に印字され、身近なバーコード。
Code39 => 数字以外も表示できるコード。産業界で使われています。
【例】Dim bc1 As
DotNetBarcode = New DotNetBarcode(DotNetBarcode.Types.Code39)
上記例は、Visual BasicでCode39を使う場合です。
【メソッド名】WriteBar(code As String, X As Single, Y As Single, X2 As Single, Y2 As Single,
ev As System.Drawing.Graphics)
【機能】バーコードを表示する。
【パラメーター】
code:表示するバーコードの文字
X:バーコードを表示する左上隅のx 座標。
Y:バーコードを表示する左上隅のy 座標。
X2:バーコードを表示する幅。
Y2:バーコードを表示する高さ。
ev:System.Drawing.Graphics
【注意点】
QRコードを使う場合は、バーコードが正方形になるため、WidthとHighの小さい方の大きさでバーコードが作成されます。ただし、QRコードは1ピクセル単位でバーコードを作成するため、WidthとHighの小さい方の大きさに収まる最大のピクセルを自動的に選択します。1ピクセルでバーコードを表示しても大きさが収まらない場合は、バーコードは表示されません。
【メソッド名】CopyToClipboard(code As String, Width As Single, High As Single)
【機能】バーコードをクリップボードにコピーする。
【パラメーター】
code:表示するバーコードの文字
Width:バーコードをコピーする幅。
High:バーコードをコピーする高さ。
【注意点】
QRコードを使う場合は、バーコードが正方形になるため、WidthとHighの小さい方の大きさでバーコードが作成されます。ただし、QRコードは1ピクセル単位でバーコードを作成するため、WidthとHighの小さい方の大きさに収まる最大のピクセルを自動的に選択します。1ピクセルでバーコードを表示しても大きさが収まらない場合は、バーコードはコピーされません。
【メソッド名】Save(code As String, FileName As String, Width As Single, High As Single)
【機能】バーコードをSaveFileTypeで指定したファイル形式に保存する。
指定可能なファイル形式はBitMap,Gif,Jpeg,Png,Tiff
BitMap => ビットマップ・イメージ形式
Gif => GIFファイル・イメージ形式
Jpeg => JPEGファイル・イメージ形式
Png => PNGファイル・イメージ形式
Tiff => TIFFファイル・イメージ形式
【V2.3.0からV2.4.0への重要な変更点】
.Net Frameworkの制約により、バーコードの保存時のWMFとEMFファイルの指定は、
PNGでしか保存されないことが判明しました。このため、マニュアル上はWMFと
EMFファイルのサポートはやめました。(実際には指定はできますが、PNGで保存されます)
【パラメーター】
code:表示するバーコードの文字
FileName:保存するファイル名。ファイル名にファイルタイプの指定がない時は、
自動的に保存するファイル形式に従って補われます。
Width:バーコードを保存する幅。
High:バーコードを保存する高さ。
【注意点】
QRコードを使う場合は、バーコードが正方形になるため、WidthとHighの小さい方の大きさでバーコードが作成されます。ただし、QRコードは1ピクセル単位でバーコードを作成するため、WidthとHighの小さい方の大きさに収まる最大のピクセルを自動的に選択します。1ピクセルでバーコードを表示しても大きさが収まらない場合は、バーコードは保存されません。
===================================
以下のメソッドはQRコード(二次元バーコード)専用のメソッドです。
(Jan13,Jan8,Code39では使えません)
===================================
【メソッド名】QRWriteBar(code As String, X As Single, Y As Single, pPixelSize As Integer,
ev As System.Drawing.Graphics)
【機能】
1モジュール(1つの点の大きさ:ピクセル)の大きさを指定してQRコードを表示する
【パラメーター】
code:表示するバーコードの文字
X:バーコードを表示する左上隅の x 座標。
Y:バーコードを表示する左上隅の y 座標。
pPixelSize:1モジュール(1つの点の大きさ:ピクセル)の大きさ。
ev:System.Drawing.Graphics
【注意点】
このメソッドを使うと、【プロパティ名】Typeが1次元バーコードの指定になっていても
QRコードを表示します。
【メソッド名】 QRCopyToClipboard(code As String, pPixelSize As Integer)
【機能】
1モジュール(1つの点の大きさ:ピクセル)の大きさを指定して
QRコードをクリップボードにコピーする。
【パラメーター】
code:表示するバーコードの文字
pPixelSize:1モジュール(1つの点の大きさ:ピクセル)の大きさ。
【注意点】
このメソッドを使うと、【プロパティ名】Typeが1次元バーコードの指定になっていても
QRコードを表示します。
【メソッド名】 QRSave(code As String, FileName As String, pPixelSize As Integer)
【機能】
1モジュール(1つの点の大きさ:ピクセル)の大きさを指定して
QRコードをSaveFileTypeで指定したファイル形式に保存する。
指定可能なファイル形式はBitMap,Gif,Jpeg,Png,Tiff
BitMap => ビットマップ・イメージ形式
Gif => GIFファイル・イメージ形式
Jpeg => JPEGファイル・イメージ形式
Png => PNGファイル・イメージ形式
Tiff => TIFFファイル・イメージ形式
【V2.3.0からV2.4.0への重要な変更点】
.Net Frameworkの制約により、バーコードの保存時のWMFとEMFファイルの指定は、
PNGでしか保存されないことが判明しました。このため、マニュアル上はWMFと
EMFファイルのサポートはやめました。(実際には指定はできますが、PNGで保存されます)
【パラメーター】
code:表示するバーコードの文字
FileName:保存するファイル名。ファイル名にファイルタイプの指定がない時は、
自動的に保存するファイル形式に従って補われます。
pPixelSize:1モジュール(1つの点の大きさ:ピクセル)の大きさ。
【注意点】
このメソッドを使うと、【プロパティ名】Typeが1次元バーコードの指定になっていても
QRコードを表示します。
【プロパティ名】Type
バーコートのタイプを表す。(DefaultはJan13)
指定可能なタイプは、QRCode、Jan13、Jan8、Code39
QRCode=>二次元バーコードの標準。携帯電話などで読み取り可能
Jan13 => JAN(Japan Article Number)の13桁。一般商品に印字され、身近なバーコード。
Jan8 => JAN(Japan Article Number)の8桁。一般商品に印字され、身近なバーコード。
Code39 => 数字以外も表示できるコード。産業界で使われています。
【プロパティ名】BarColor
バーコードの色を変える。(DefaultはColor.Black)
【プロパティ名】BackGroundColor
バーコードの背景色を変える。(DefaultはColor.White)
【プロパティ名】FontColor
文字のフォントの色を変える。(DefaultはColor.Black)
【プロパティ名】FontBackGroundColor
文字のフォントの背景色を変える。(DefaultはColor.White)
【プロパティ名】FontName
文字のフォントの名前を変える。(Defaultは"MS Pゴシック")
【注意】:この設定は1次元バーコード(JAN13,JAN8,CODE39)のみ有効です。
【プロパティ名】FontSize
文字のフォントの大きさを変える。(Defaultは9)
【注意】:この設定は1次元バーコード(JAN13,JAN8,CODE39)のみ有効です。
【プロパティ名】AddChechDigit
チェックデジットを追加する。(DefaultはFalse)
【注意】:この設定は1次元バーコード(JAN13,JAN8,CODE39)のみ有効です。
【プロパティ名】PrintChar
文字を表示する。(DefaultはTrue)
【注意】:この設定は1次元バーコード(JAN13,JAN8,CODE39)のみ有効です。
【プロパティ名】PrintCheckDigitChar
文字を表示する時にチェックデジットを表示する。(DefaultはFalse)
Code39のときはPrintCheckDigitChar=Trueの場合は*も表示される。
【注意】:この設定は1次元バーコード(JAN13,JAN8,CODE39)のみ有効です。
【プロパティ名】WriteDebugInfo
バーコードのディバッグ情報を書く。(DefaultはFalse)
バーコードのディバッグ情報は1文字に対して、奇数目のバーか偶数目のバーか最後のバーかで色を変える
【注意】:この設定は1次元バーコード(JAN13,JAN8,CODE39)のみ有効です。
【プロパティ名】DebugInfoOddColor
バーコードのディバッグ情報の奇数番目のバーの色。(DefaultはColor.DarkBlue)
バーコードのディバッグ情報は1文字に対して、奇数目のバーか偶数目のバーか最後のバーかで色を変える
【注意】:この設定は1次元バーコード(JAN13,JAN8,CODE39)のみ有効です。
【プロパティ名】DebugInfoEvenColor
バーコードのディバッグ情報の偶数番目のバーの色。(DefaultはColor.LightBlue)
バーコードのディバッグ情報は1文字に対して、奇数目のバーか偶数目のバーか最後のバーかで色を変える
【注意】:この設定は1次元バーコード(JAN13,JAN8,CODE39)のみ有効です。
【プロパティ名】DebugInfoLastColor
バーコードのディバッグ情報の最後のバーの色。(DefaultはColor.Red)
バーコードのディバッグ情報は1文字に対して、奇数目のバーか偶数目のバーか最後のバーかで色を変える
【注意】:この設定は1次元バーコード(JAN13,JAN8,CODE39)のみ有効です。
【プロパティ名】SaveFileType (DotNetBarcode V2で追加)
ファイルに保存する時のファイルフォーマットを指定する(DefaultはBitMap)
指定可能なファイル形式はBitMap,Emf,Gif,Jpeg,Png,Tiff,Wmf
BitMap => ビットマップ・イメージ形式
Emf => メタファイル・イメージ形式
Gif => GIFファイル・イメージ形式
Jpeg => JPEGファイル・イメージ形式
Png => PNGファイル・イメージ形式
Tiff => TIFFファイル・イメージ形式
Wmf => メタファイル・イメージ形式
【プロパティ名】FontBold (DotNetBarcode V2で追加)
フォントをBoldにする(DefaultはFalse)
【注意】:この設定は1次元バーコード(JAN13,JAN8,CODE39)のみ有効です。
【プロパティ名】FontItalic (DotNetBarcode V2で追加)
フォントをItalicにする(DefaultはFalse)
【注意】:この設定は1次元バーコード(JAN13,JAN8,CODE39)のみ有効です。
===================================
以下のプロバティはQRコード(二次元バーコード)専用のプロパティです。
(Jan13,Jan8,Code39では使えません)
===================================
【プロパティ名】QRSetECCRate
誤り訂正レベルを設定します。
(DefaultはMedium15Percent)
指定可能な値は、Low7Percent,Medium15Percent,Quality25Percent,HighQuality30Percent
Low7Percent => 冗長性7%の誤り訂正レベル
Medium15Percent => 冗長性15%の誤り訂正レベル
Quality25Percent => 冗長性25%の誤り訂正レベル
HighQuality30Percent => 冗長性30%の誤り訂正レベル
【プロパティ名】QRSetTextType
文字モードを設定します。
(DefaultはAutomatic)
指定可能な値は、Automatic,Numeric,AlphaNumeric,Kanji,Binary
Automatic => 自動モードを選択(下記の4つのモードでバーコードが最小になるように
自動的にモードを選択します)
Numeric => 数字モードを選択
AlphaNumeric => 英数字モードを選択
Kanji => 漢字モードを選択
Binary => 8ビットバイト・モードを選択
【注意】
バーコードにする表示する文字に指定されたモード以外の文字がある場合は、自動的に最適なモードが
選択されます。
【プロパティ名】QRInquireTextType
バーコートを表示するときに選択された文字モードを返します。
バーコードに表示する文字に指定されたモード以外の文字がある場合は、自動的に最適なモードが
選択されます。
【プロパティ名】QRSetVersion
シンボルの型番(バージョン)を設定します。
(DefaultはAutomatic)
指定可能な値は、Automatic,Ver01,Ver02....Ver39,Ver40
Automatic => 自動モードを選択(バーコードにする表示する文字が収まるような最小の
バージョンが自動的に選択されます。)
Ver01 => バージョン1を選択
Ver02 => バージョン2を選択
*
*
Ver39 => バージョン39を選択
Ver40 => バージョン40を選択
【注意】
指定されたバージョンでは、バーコードにする表示する文字が収まらない場合は、自動的に最適な
バージョンが選択されます。
【プロパティ名】QRInquireVersion
自動に設定された場合に、選択されたバージョンを返します。
指定されたバージョンより、文字数の方が大きかった場合は、その文字数を表示する最小のバージョン
になります。
文字数が、最大文字数を超えた場合は0になります。その場合は、バーコードのデータは空になります。
【プロパティ名】QRInquireNumericBits
数字モードで、指定した文字でQRコードを作成した時に必要な文字のビット数を返す。
【注意】
バーコードにする表示する文字に数字以外の文字がある場合は0を返す。
【プロパティ名】QRInquireAlphaNumericBits
英数字モードで、指定した文字でQRコードを作成した時に必要な文字のビット数を返す。
【注意】
バーコードにする表示する文字に英数字以外の文字がある場合は0を返す。
【プロパティ名】QRInquireKanjiBits
漢字モードで、指定した文字でQRコードを作成した時に必要な文字のビット数を返す。
【注意】
バーコードにする表示する文字に漢字以外の文字がある場合は0を返す。
【プロパティ名】QRInquireBinaryBits
8ビットバイト・モードで、指定した文字でQRコードを作成した時に必要な文字のビット数を返す。
【プロパティ名】QRQuitZone
クワイエット・ゾーン(余白)のモジュール数
(Defaultは4)
【プロパティ名】QRInquireModuleSize
選択されたモジュールのサイズ(縦横それぞれの点の数)を返す。
(実行前のDefaultは0)
【プロパティ名】Rotate
回転角度(右回り)を指定する。
回転してもバーコードを表示する座標は必ず右上を指定します。
指定できる値は、Rotates.Rotate0,Rotates.Rotate90,Rotates.Rotate180,Rotates.Rotate270の4つの値
一次元バーコードにも、QRコードにも適用される
QRRotateが0以外の値が指定されQRコードが表示される場合、Rotateの値をセットすると
QRRotateは0になり無視される。
【プロパティ名】QRRotate
任意の回転角度を指定可能(QRコード専用)
回転してもバーコードを表示する座標は右上を指定します。
QRRotateの値をセットすると、Rotateの値はRotates.Rotate0になり無視される。
【プロパティ名】QRBackGroundFileName
QRコードの背景に表示するビットマップ(やJpeg,Gif)のファイル名
QRBackGroundFileNameがブランクの場合は、背景のファイルは使われない。
(BackGroundColorなどが使われる。)
【プロパティ名】QRColorBigMark
位置検出パターン(大きいマーク)の色を指定します。
(DefaultはColor.Black)
【注意】
この値を変更すると自動的に、QRColorBigMark1,QRColorBigMark2,QRColorBigMark3も
同じ値で設定されます。
この値は設定のみで、値の照会はできません。値の照会する場合は、QRColorBigMark1,
QRColorBigMark2,QRColorBigMark3で照会します。
この値はBarColorを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRBackColorBigMark
位置検出パターン(大きいマーク)の背景色を指定します。
(DefaultはColor.White)
【注意】
この値を変更すると自動的に、QRBackColorBigMark1,QRBackColorBigMark2,
QRBackColorBigMark3も同じ値で設定されます。
この値は設定のみで、値の照会はできません。値の照会する場合は、QRBackColorBigMark1,
QRBackColorBigMark2,QRBackColorBigMark3で照会します。
この値はBackGroundColorを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRColorBigMark1
右上の位置検出パターン(大きいマーク)の色を指定します。
(DefaultはColor.Black)
【注意】
この値はBarColorを変更すると自動的にその設定した値に変更されます。
また、この値はQRColorBigMarkを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRBackColorBigMark1
右上の位置検出パターン(大きいマーク)の背景色を指定します。
(DefaultはColor.White)
【注意】
この値はBackGroundColorを変更すると自動的にその設定した値に変更されます。
また、この値はQRBackColorBigMarkを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRColorBigMark2
右下の位置検出パターン(大きいマーク)の色
(DefaultはColor.Black)
【注意】
この値はBarColorを変更すると自動的にその設定した値に変更されます。
また、この値はQRColorBigMarkを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRBackColorBigMark2
右下の位置検出パターン(大きいマーク)の背景色
(DefaultはColor.White)
【注意】
この値はBackGroundColorを変更すると自動的にその設定した値に変更されます。
また、この値はQRBackColorBigMarkを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRColorBigMark3
左上の位置検出パターン(大きいマーク)の色
(DefaultはColor.Black)
【注意】
この値はBarColorを変更すると自動的にその設定した値に変更されます。
また、この値はQRColorBigMarkを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRBackColorBigMark3
左上の位置検出パターン(大きいマーク)の背景色
(DefaultはColor.White)
【注意】
この値はBackGroundColorを変更すると自動的にその設定した値に変更されます。
また、この値はQRBackColorBigMarkを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRColorSmallMark
位置合わせパターン(小さいマーク)の色
(DefaultはColor.Black)
【注意】
この値はBarColorを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRBackColorSmallMark
位置合わせパターン(小さいマーク)の背景色
(DefaultはColor.White)
【注意】
この値はBackGroundColorを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRColorBigMarkBorder
位置検出パターンの境界線(大きいマークの境界)の色
(DefaultはColor.White)
【注意】
この値を変更すると自動的に、QRColorBigMarkBorder1,QRColorBigMarkBorder2,
QRColorBigMarkBorder3も同じ値で設定されます。
この値は設定のみで、値の照会はできません。値の照会する場合は、QRColorBigMarkBorder1,
QRColorBigMarkBorder2,QRColorBigMarkBorder3で照会します。
この値はBackGroundColorを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRColorBigMarkBorder1
右上の位置検出パターンの境界線(大きいマークの境界)の色
(DefaultはColor.White)
【注意】
この値はBackGroundColorを変更すると自動的にその設定した値に変更されます。
また、この値はQRColorBigMarkBorderを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRColorBigMarkBorder2
右下の位置検出パターンの境界線(大きいマークの境界)の色
(DefaultはColor.White)
【注意】
この値はBackGroundColorを変更すると自動的にその設定した値に変更されます。
また、この値はQRColorBigMarkBorderを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRColorBigMarkBorder3
左上の位置検出パターンの境界線(大きいマークの境界)の色
(DefaultはColor.White)
【注意】
この値はBackGroundColorを変更すると自動的にその設定した値に変更されます。
また、この値はQRColorBigMarkBorderを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRColorTimingPattern
タイミング・パターン(左と上の点線)の色
(DefaultはColor.Black)
【注意】
この値はBarColorを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRBackColorTimingPattern
タイミング・パターン(左と上の点線)の背景色
(DefaultはColor.White)
【注意】
この値はBackGroundColorを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRColorVersionInformation
型番情報の色
(DefaultはColor.Black)
【注意】
この値はBarColorを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRBackColorVersionInformation
型番情報の背景色
(DefaultはColor.White)
【注意】
この値はBackGroundColorを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRColorFormatInformation
形式情報の色
(DefaultはColor.Black)
【注意】
この値はBarColorを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRBackColorFormatInformation
形式情報の背景色
(DefaultはColor.White)
【注意】
この値はBackGroundColorを変更すると自動的にその設定した値に変更されます。
【プロパティ名】QRColorQuitZone
クワイエット・ゾーン(余白)の色
(DefaultはColor.White)
【注意】
この値はBackGroundColorを変更すると自動的にその設定した値に変更されます。
DotNetBarcodeV2.0.0までのルート名前空間はDotNetBarcodeでした。しかし、オブジェクト名も同じDotNetBarcodeになっているため、VBのImportsやC#のusingでDotNetBarcodeとルート名前空間を指定してもオブジェクトへのアクセスはDotNetBarcode.DotNetBarcodeとすべてに指定する必要があり、使いやすくないという意見がありました。
DotNetBarcodeV2.2.0以降はルート名前空間をSystemに変更しました。そのため、VBのImportsやC#のusingでSystemを指定すると(通常はすでに入っている場合もあります) DotNetBarcodeだけでオブジェクトへアクセスできるようになりました。
しかし、既に既存のプログラムで使用されている場合は、プログラムを下記のように変更願います。
【DotNetBarcode V2.0.0以前】
【Visual Basicの場合】
Dim bc1 As DotNetBarcode.DotNetBarcode = New DotNetBarcode.DotNetBarcode
bc1.Type = DotNetBarcode.DotNetBarcode.Types.Jan13
【C#の場合】
DotNetBarcode.DotNetBarcode
bc1 =new DotNetBarcode.DotNetBarcode();
bc1.Type = DotNetBarcode.DotNetBarcode.Types.Jan13
【DotNetBarcode V2.2.0以降(V2.3.0を含む)】
【Visual Basicの場合】
Imports System
Dim bc1 As DotNetBarcode = New DotNetBarcode
bc1.Type = DotNetBarcode.Types.Jan13
【C#の場合】
using System;
DotNetBarcode bc1 =new
DotNetBarcode();
bc1.Type = DotNetBarcode.Types.Jan13