Visual Basic.NET - Impresion de codigos de barras

 
Vista:
sin imagen de perfil

Impresion de codigos de barras

Publicado por gustavo (1 intervención) el 18/02/2023 03:21:34
Alguien prodra ayudame, hice una aplicacion que imprime cosigos de barras por amyoreo desde un numero de 10 digitos para coigo 128, la aplicacion lee una base de datos que dice el ultimo numero impreso para no repetir numeros y manda a imprimir desde el numero que quieres hasta la cantidad de etuiquetas que deseas, es decir si yo ingreso el valor 12345 y le digo que imprima 500 etiquetas, las genera y las imprime,
la aplicacio funcona como tal perfectamente pero solo tiene un problema que al momento que manda a imprimir manda una por una de tal forma que la impresion se vuelve lenta y quiero saber si hay forma de que las genere y las mande de forma conjunta para que la impresora lo imrpima mas rapiso.
Cabe mencionar que con una versio ngratuita de bartender que descargue mando a imprimir y imprime bastante rapido ya que esta manda las 500 tareas en un solo envio.

pongo una imagen demi codigo para qe me puedan apoyar

'declaramos y damos el formato del codigo de barras
Dim escribircod As New BarcodeWriter
escribircod.Format = BarcodeFormat.CODE_128
ReDim imagenes(cantidad) ' Redimensionamos el vertor que contiene las imegnes

jababarras() 'Metodo que garantiza que el numero introducido sea de 10 digitos con veros previos a este numero

imagenes(i) = escribircod.Write(codigotext) ' Guarda la imagen en la posicion del vector
PictureBox1.Image = escribircod.Write(codigotext) ' Dibuja la imagen el el PictureBox

PrintDocument1.DocumentName = "Codigo: " + codigo.ToString
e.Graphics.DrawImage(PictureBox1.Image, -10, 0, 160, 70) 'Dimensiona tamaño y posicion de la imagen en la etiqueta

If codAct >= codMax Then
codAct = codMax
End If

If i <= cantidad Then 'Agrega una pagina nueva para imprimir
e.HasMorePages = True
Else
i = 0
e.HasMorePages = False
End If

i += 1
If i >= cantidad Then
i = 0
e.HasMorePages = False
PictureBox1.Visible = False

If codAnt = False Then
Dim reescribir As New StreamWriter(Ruta.ToString)
Try 'Reescribi el numero mayor que se ha impreso
reescribir.WriteLine(Date.Now.ToString + ", " + codigotext)
reescribir.Close()
leerdatos()
Catch ex As Exception
MsgBox("Error al Actualizar base de Datos: " = ex.ToString, vbCritical, "Base de Datos")
End Try
End If

End If
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder