Hola, amigos, por aquí de nuevo dando la lata, espero que todos estén bien.
Hace un par de años, precisamente un 28 de abril como hoy pero de 2021, inicié un hilo para solucionar una serie de problemas que tenía con la impresión por bluetooth.
Gracias a los que participaron logré solucionarlo y quedó funcionando perfectamente, nadie se ha quejado y espero que siga asi.
Pero, siempre hay un pero, un cliente me ha pedido que imprima al principio del ticket el logo de la empresa, y yo voy y... no lo consigo.
Llevo varios días con esto porque quería solucionarlo yo solito, pero nada, me rindo, voy a pediros ayuda. Os voy a poner el código que estoy usando para conectar por BT y para imprimir una vez ha conectado, ya digo, funciona bien, y lo que necesito es añadir ahí que imprima también un logo/imagen.
Muchas gracias.
Hace un par de años, precisamente un 28 de abril como hoy pero de 2021, inicié un hilo para solucionar una serie de problemas que tenía con la impresión por bluetooth.
Gracias a los que participaron logré solucionarlo y quedó funcionando perfectamente, nadie se ha quejado y espero que siga asi.
Pero, siempre hay un pero, un cliente me ha pedido que imprima al principio del ticket el logo de la empresa, y yo voy y... no lo consigo.
Llevo varios días con esto porque quería solucionarlo yo solito, pero nada, me rindo, voy a pediros ayuda. Os voy a poner el código que estoy usando para conectar por BT y para imprimir una vez ha conectado, ya digo, funciona bien, y lo que necesito es añadir ahí que imprima también un logo/imagen.
Muchas gracias.
B4X:
Globals
Dim BTconexSerial As Serial
Dim BTadmin As BluetoothAdmin
Dim OutStream As OutputStream
Dim twOut As TextWriter
Dim cPrinterBTmac As String = "DC:0D:30:DA:75:12"
B4X:
Sub btPrint_Click As ResumableSub
If Not (BTadmin.IsInitialized) Then
Wait For (ConectarBT) complete (bRes As Boolean)
If Not(bRes) Then
ToastMessageShow("No se pudo conectar a BT",False)
Return False
End If
End If
If Not(globales.BTadmin.IsEnabled) Then
BTadmin.Enable
Wait For BTadmin_StateChanged (NewState As Int, OldState As Int)
If NewState = BTadmin.STATE_OFF Or NewState = BTadmin.STATE_TURNING_OFF Then
ToastMessageShow("No se pudo habilitar BT",False)
Return False
End If
End If
If Not (BTconexSerial.IsInitialized) Then
If Not(BTconexSerial.IsEnabled) Then
BTconexSerial.Initialize("BTconexSerial")
End If
End If
BTconexSerial.Connect( cPrinterBTmac )
Wait For BTconexSerial_Connected(Success As Boolean)
If Success Then
OutStream = BTconexSerial.OutputStream
twOut.Initialize2(OutStream,"windows-1252")
'
' <--- Aqui debería imprimir el logo/imagen !!!!!
'
'
twOut.Write( "Ticket 123" ) ' <--- Aquí va el texto de la venta
twOut.Flush
'
twOut.Close
OutStream.Close
BTconexSerial.Disconnect
End If
'
Return True
End Sub
B4X:
Sub ConectarBT As ResumableSub
Dim bOk As Boolean = False
'
rp.CheckAndRequest(rp.PERMISSION_ACCESS_FINE_LOCATION)
Wait For Activity_PermissionResult (Permission As String, Result As Boolean)
If Result = False Then
ToastMessageShow("Sin permisos", False)
Return bOk
End If
'
If cPrinterBTmac.Trim.Length=0 Then
ToastMessageShow("Elija printer BT en Menú Utilidades",False)
Else
ProgressDialogShow("Conectando BT...")
Try
BTadmin.Initialize("BTadmin")
If Not (BTadmin.IsEnabled) Then
BTadmin.Enable
Wait For BTadmin_StateChanged (NewState As Int, OldState As Int)
If NewState = BTadmin.STATE_OFF Or NewState = BTadmin.STATE_TURNING_OFF Then
ToastMessageShow("No se pudo habilitar BT",False)
Else
ToastMessageShow("Bluetooth activado",False)
bOk = True
End If
Else
bOk = BTadmin.IsEnabled
End If
'
Catch
ToastMessageShow("No se pudo habilitar bluetooth",False)
bOk = False
End Try
ProgressDialogHide
End If
'
Return bOk
End Sub
Last edited: