Здесь будут приведены некоторые примеры применения ABarCode-ActiveX. Для того, чтобы сделать
их проще, все примеры написаны на MS Visual Basic, но то же самое может быть написано
на любом другом языке B.NET, VC.NET, VC++, C#, Delphi, ASP, и т.д.
|
Для использования ABarcode-ActiveX нет необходимости размещать его на форме, как показано здесь.
Вы можете создать невидимый штрихкод из любого приложения включая ваши DLL.
Во первых нужно создать объект, используя функцию CreateObject (как показано ниже). После
того как объект создан, его можно использовать так как вам необходимо.
'Создать объект штрихкода
Dim oABarCode As Object
Set oABarCode = CreateObject("ABarCode.ActiveBC.1")
'установить свойства штрихкода
oABarCode.BarText = "Hello world"
oABarCode.BarType = Code128
oABarCode.ShowCheck = False
'использование штрихкода
Dim minWidth As Long
minWidth = oABarCode.MinBarcodeWidth
Call oABarCode.DrawBarcodeToSize(5, 5, minWidth, 45, dmPixels, Form1.hdc)
'уничтожение объекта
Set oABarCode = Nothing
|
Есть несколько различных путей для печати штрихкода из Visual Basic.
-
Используя объект принтера Visual Basic.
Printer.CurrentX = 2048
Printer.Print "SBarCode.com, VB Example"
'ABarCode-ActiveX будет использовать Printer объект
Call ActiveBC1.SetPrinterHDC(Printer.hdc)
'напечатать два штрихкода
Call ActiveBC1.DrawBarcodeToSize(10, 10, 50, 25, dmMM)
Call ActiveBC1.DrawBarcodeToSize(70, 10, 50, 25, dmMM)
Printer.EndDoc
-
Используя методы BarCode-ActiveX.
'открыть текущий принтер
Call ActiveBC1.BeginPrint("")
'напечатать два штрихкода
Call ActiveBC1.DrawBarcodeToSize(10, 10, 50, 25, dmMM)
Call ActiveBC1.DrawBarcodeToSize(70, 10, 50, 25, dmMM)
Call ActiveBC1.EndPrint
-
Как напечатать штрихкод с необходимым x-dimension.
Для того чтобы напечатать штрихкод с определенным x-dimension, вы должны
правильно установить ширину штрихкода. Вы можете вычислить ширину, используя
функцию GetBarcodeWidth.
Private Declare Function GetDeviceCaps Lib "gdi32" _
(ByVal hdc As Long, ByVal nIndex As Long) As Long
Private Const LOGPIXELSX = 88
Private Const LOGPIXELSY = 90
Private Sub PrintBarcode()
'Создать объект BarCode-ActiveX
Dim oABarCode As Object
Set oABarCode = CreateObject("ABarCode.ActiveBC.1")
'установить свойства BarCode-ActiveX
oABarCode.BarText = "Hello world"
oABarCode.BarType = Code128
oABarCode.ShowCheck = False
Dim barFont As New StdFont
barFont.Name = "Courier"
barFont.Size = 36
barFont.Bold = True
oABarCode.font = barFont
'открыть текущий принтер
Call oABarCode.BeginPrint("")
'получить разрешение принтера (dpi - dots per inch)
Dim dpiX As Long, dpiY As Long
dpiX = GetDeviceCaps(Printer.hdc, LOGPIXELSX)
dpiY = GetDeviceCaps(Printer.hdc, LOGPIXELSY)
'вычислить необходимую ширину штрихкода (в мм) для x-dimension равным 0.508 мм (20 Mils)
Dim barWidth As Double
barWidth = oABarCode.GetBarcodeWidth(0.508, dpiX, dpiY, dmMM)
'напечатать штрихкод
Call oABarCode.DrawBarcodeToSize(10, 10, barWidth, 25, dmMM)
Call oABarCode.EndPrint
Set oABarCode = Nothing
End Sub
|