Generator Barcode Menggunakan VB6

Sub DrawBarcode(ByVal Bc_string As String, Obj As Object)
Dim Xpos!
Dim Y1!
Dim Y2!
Dim Dw%
Dim Th!
Dim Tw
Dim New_string$
If Bc_string = "" Then Obj.Cls: Exit Sub
Dim Bc(90) As String
Bc(1) = "1 1221"
Bc(2) = "1 1221"
Bc(48) = "11 221"
Bc(49) = "21 112"
Bc(50) = "12 112"
Bc(50) = "12 112"
Bc(51) = "22 111"
Bc(52) = "11 212"
Bc(53) = "21 211"
Bc(54) = "12 211"
Bc(55) = "11 122"
Bc(56) = "21 121"
Bc(57) = "12 121"
Bc(65) = "211 12"
Bc(66) = "121 12"
Bc(67) = "221 11"
Bc(68) = "112 12"
Bc(69) = "212 11"
Bc(70) = "122 11"
Bc(71) = "111 22"
Bc(72) = "211 21"
Bc(73) = "121 21"
Bc(74) = "112 21"
Bc(75) = "2111 2"
Bc(76) = "1211 2"
Bc(77) = "2211 1"
Bc(78) = "1121 2"
Bc(79) = "2121 1"
Bc(80) = "1221 1"
Bc(81) = "1112 2"
Bc(82) = "2112 1"
Bc(83) = "1212 1"
Bc(84) = "1122 1"
Bc(85) = "2 1112"
Bc(86) = "1 2112"
Bc(87) = "2 2111"
Bc(88) = "1 1212"
Bc(89) = "2 1211"
Bc(90) = "1 2211"
Bc(32) = "1 2121"
Bc(35) = ""
Bc(36) = "1 1 1 11"
Bc(37) = "11 1 1 1"
Bc(43) = "1 11 1 1"
Bc(45) = "1 1122"
Bc(47) = "1 1 11 1"
Bc(46) = "2 1121"
Bc(64) = ""
Bc(42) = "1 1221"
Bc_string = UCase(Bc_string)
Obj.ScaleMode = 3
Obj.Cls
Obj.Picture = Nothing
Dw = CInt(Obj.ScaleHeight / 150)
If Dw < 1 Then Dw = 1
Th = Obj.TextHeight(Bc_string)
Tw = Obj.TextWidth(Bc_string)
New_string = Chr$(1) & Bc_string & Chr$(2)
Y1 = Obj.ScaleTop
Y2 = Obj.ScaleTop + Obj.ScaleHeight - 1.5 * Th
Obj.Width = 1.1 * Len(New_string) * (15 * Dw) * Obj.Width / Obj.ScaleWidth
Xpos = Obj.ScaleLeft
For N = 1 To Len(New_string)
C = Asc(Mid$(New_string, N, 1))
If C > 90 Then C = 0
bc_pattern$ = Bc(C)
For i = 1 To Len(bc_pattern$)
Select Case Mid$(bc_pattern$, i, 1)
Case " "
Obj.Line (Xpos, Y1)-(Xpos + 1 * Dw, Y2), &HFFFFFF, BF
Xpos = Xpos + Dw
Case "1"
Obj.Line (Xpos, Y1)-(Xpos + 1 * Dw, Y2), &HFFFFFF, BF
Xpos = Xpos + Dw
Obj.Line (Xpos, Y1)-(Xpos + 1 * Dw, Y2), &H0&, BF
Xpos = Xpos + Dw
Case "2"
Obj.Line (Xpos, Y1)-(Xpos + 1 * Dw, Y2), &HFFFFFF, BF
Xpos = Xpos + Dw
Obj.Line (Xpos, Y1)-(Xpos + 2 * Dw, Y2), &H0&, BF
Xpos = Xpos + 2 * Dw
End Select
Next
Next
Obj.Line (Xpos, Y1)-(Xpos + 1 * Dw, Y2), &HFFFFFF, BF
Xpos = Xpos + Dw
Obj.Width = (Xpos + Dw) * Obj.Width / Obj.ScaleWidth
Obj.CurrentX = (Obj.ScaleWidth - Tw) / 2
Obj.CurrentY = Y2 + 0.25 * Th
Obj.Print Bc_string
End Sub
Call DrawBarcode(Text1, Picture1)
Cukup mudah bukan, untuk sourcode bisa didownload di LINK INI
barcode nya bisa di print gan? sklaian caranya nya dong hehehe
ReplyDelete