Cómo utilizar PB para generar control ocx
Visto en otros lugares:
Utilice el método de dibujo para imprimir en una impresora normal.
Las reglas de codificación de los códigos de barras no son más que los diferentes anchos de líneas y espacios entre líneas. Para representar unos y ceros binarios, siempre que comprendamos las reglas de codificación de los códigos de barras, podemos utilizar el dibujo para obtener resultados aceptables en impresoras normales. A continuación analizaremos el código CODE39 más utilizado.
Las reglas de codificación del código CODE39 son:
1. Cada cinco líneas representan un carácter
2.
3. Un espacio amplio entre líneas representa 1 y un espacio estrecho representa 0
Cinco líneas más cuatro espacios entre ellas son código binario de nueve bits, y estos nueve; Tres de los dígitos deben ser 1, por eso se llama código 39
5. Un * al principio y al final del código de barras marca el principio y el final
En nuestro programa, damos caracteres de uso común Todos están codificados Al interpretar, primero tome el grosor de la línea y luego el ancho del espacio. Por ejemplo:
El carácter * en la imagen de arriba se puede interpretar como 001101000. y el carácter 3 se interpreta como 110000100.
El siguiente es el subproceso que damos:
Nota: envíe el código de barras correspondiente a la cadena strBarCode a la impresora predeterminada
Private Sub PrintBarCode( _
ByVal strBarCode como cadena, _
ByVal intXPos opcional como entero = 0, _
ByVal intYPos opcional como entero = 0, _
ByVal opcional intPrintHeight como entero = 10, _
ByVal opcional bolPrintText como booleano = True _
)
Comentarios: Descripción del parámetro:
Comentarios: strBarCode - cadena de código de barras que se imprimirá
Comentarios: intXPos, intYPos - imprime las coordenadas de la esquina superior izquierda del código de barras (el valor predeterminado es (0 , 0), escala de coordenadas: milímetros)
Comentarios: intHeight - imprimir altura (el valor predeterminado es un centímetro, escala de coordenadas: milímetros)
Comentarios: bolPrintText - si se imprimen caracteres reconocidos artificialmente (el valor predeterminado es verdadero)
Comentarios: "0"-" 9", "A-Z", "-", "", "$" y "*" formato de codificación de código de barras, total *** 40 caracteres
StrBarTable(39) estática como cadena
Comentarios: Inicializar tabla de formato de codificación de código de barras
strBarTable(0) = "001100100" Comentarios: 0
strBarTable(1) = "100010100" Comentarios: 1
strBarTable(2) = "010010100" Comentarios:
' Mover la posición del lápiz
Función de declaración privada MoveToEx Lib "gdi32" (ByVal hdc As Long, ByVal x As
Long, ByVal y As Long, lpPoint As POINTAPI) As Long
' Dibuja una línea desde el posición actual del lápiz en (x, y)
Función de declaración privada LineTo Lib "gdi32" (ByVal hdc As Long, ByVal x As Long,
ByVal y As Long) As Largo
' en (x, y
)
Función de declaración privada TextOut Lib "gdi32" Alias "TextOutA" (ByVal hdc As
Long, ByVal x As Long, ByVal y As Long, ByVal lpString As String, ByVal nCount
As Long) As Long
' Parámetros requeridos por la función MoveToEx()
Tipo privado POINTAPI
xp As Long
yp As Long
Tipo final
Dim papi As POINTAPI
La operación de dibujo lineal es (función Printer.Line original):
MoveToEx PrintDC, x k, y, papi
LineTo PrintDC, x k, y intHeight 1
El carácter de impresión es (función Printer.Print original):
TextOut PrintDC, x, y intHeight, Mid(strBC, i 1, 1), 1
Respuesta: scrocksWang - Asistente Nivel 2 2-7 17:06
p >Somos la sucursal de Shenzhen Dazhen Barcode Technology Co., Ltd. en Beijing. Actualmente, la compañía ha establecido Shenzhen Woma Technology Co., Ltd. para expandir el negocio de integración de sistemas. Nuestras principales marcas son: impresoras de códigos de barras: Lixiang ARGOX; ToshibaTEC. Escaneo: Xinji CIPHER LAB; Toyota Denso DENSO; plataforma Fujitsu FUJITSU; Los productos anteriores son, con diferencia, los agentes más importantes en China. Esperamos tener la oportunidad de seguir fortaleciendo la cooperación con personas de la industria. Bienvenido a llamarnos o enviarnos consultas: 010-82522465, 82522466. ¡Esperamos cooperar con usted al precio más bajo y con el servicio más sincero!