Spanish Se puede imprimir desde B4 ?

Ecoleo

Member
Licensed User
Longtime User
alguno de vosotros sabe como imprimir .
Estoy terminando una app que permite ir añadiendo articulos a una cesta de la compra, y ahora necesito imprimir el tikect de esta compra. De momento la solucion que estoy manejando es enviar un mail y despues imprimir el mail , pero esto ya desde fuera del B4a. No es la solucion deseada , pero me permite continuar el desarrollo de la app.
Si teneis alguna sugerencia, os estaré muy agradecido.
He abierto un post sobre el B4aserver, que creo sirve para esto y para más.. pero no he obtenido ninguna respuesta¿?.
Saludos:sign0085:
 

Ecoleo

Member
Licensed User
Longtime User
El tutorial para imprimir lo encuentras AQUI

Gracias, a primera vista parece ser lo que necesito, otra cosa es que sea capaz de aplicarlo y que me funcione, si lo consigo me comprometo a abrir un post con los pasos correctos para imprimir directamente desde B4a.
Saludos
 

Jomagom

Member
Licensed User
Longtime User
a Ver, yo creo que cada vez que alguien haga una pregunta de algo que no sabe, no creo que lo más indicado sea derivarlo al Foro de Ingles, deveriamos todos hacer un esfuerzo e intentar hacer un tutorial en Castellano o bien traducir dicho manual y postearlo en este foro.
Un Saludo
Jomagom
 

Jomagom

Member
Licensed User
Longtime User
Traducción Extraida del Foro en Ingles:
Posteado por Erel's

Vea este enlace para obtener más información acerca de B4AServer: http://www.b4x.com/forum/basic4andr...nt-enterprise-house-android-applications.html

La impresión se realiza en dos pasos. En primer lugar, cargar el archivo de texto al servidor y luego ejecutar un comando shell predefinido que utiliza una bonita utilidad gratuita de línea de comandos que imprime archivos html: Imprimir código HTML de una línea de comandos o archivo por lotes

En primer lugar, debe instalar PrintHtml y asegúrese de que está funcionando correctamente. Es probable que tenga que instalar algún componente adicional de Microsoft, como se explica en el enlace.

A continuación añadimos un comando de impresión para la configuración del servidor:
B4X:
Shell.Print="c:\\program files\\PrintHTML\\printhtml.exe" printername="novapdf" header="" footer=""

Usted debe, por supuesto, establecer la ruta y nombre_de_impresora según sea necesario.

El código de impresión del cliente es muy sencillo
B4X:
Sub Globals
    Dim uploadTask, printTask As Int
    Dim uploadedFile As String
End Sub

Sub PrintText(Text As String)
    File.WriteString(File.DirInternalCache, "1.txt", Text.Replace(CRLF, "<br/>"))
    PrintHtmlFile(File.DirInternalCache, "1.txt")
End Sub

Sub PrintHtmlFile(Dir As String, FileName As String)
    uploadedFile = FileName
    uploadTask = B4AServer.SendFile(Dir, FileName)
End Sub

Sub TaskComplete(Result As TaskResult)
    Log("Task=" & Result.Id & " completed. Success=" & Result.Success & ", Message=" & Result.Message)
    If Result.Success Then
        Select Result.Id
            Case uploadTask
                printTask = B4AServer.Shell("Print", Array As String("file=files/" & uploadedFile))
            Case printTask
                ToastMessageShow("File printed successfully", True)
        End Select
    Else
        Msgbox(Result.Message, "Error occurred")
    End If
End Sub
Usted puede llamar a PrintText con una cadena o directamente PrintHtmlFile con una ruta a un archivo HTML. Para cadenas de texto en primer lugar sustituir el carácter de fin de línea con "<br/>", que es la línea de html nueva marca.

Carga PrintHtmlFile el archivo en el servidor. Cuando se completa la tarea que ejecuta la herramienta de impresión llamando a:
B4X:
B4AServer.Shell("Print", Array As String("file=files/" & uploadedFile))
"Print" es el nombre del comando como se configura en el servidor. Añadimos un solo argumento para el comando que es el argumento de archivo. Este argumento se añade a los otros argumentos que aparecen en el archivo de configuración.

He configurado el servidor para imprimir en una impresora pdf:

printhtml_1.png


Tampoco Cuesta Tanto.
Un Saludo
Jomagom
 
Last edited:

Ecoleo

Member
Licensed User
Longtime User
:sign0098:
Muchas gracias , a pesar de que es de suponer que todos los que usamos B4a, tenemos algun conocimiento de inglés, que remedio, si las explicaciones están en castellano, todo se vuelve más fácil.
Lo del manual en castellano, ya se ha comentado varias veces y que yo sepa de momento se ha quedado en eso, un comentario..

Gracias otra vez
 

EcoGus

Member
Licensed User
Longtime User
Perdon

Hola, :sign0085:

No estoy muy puesto en esto de impresión desde android, pero esto necesita un ordenador con la impresora conectada, no? Yo quisiera imprimir desde mi tablet android a una impresora WiFi. No se si esto es posible.

He encontrado algun programa gratutito en el Google Play; pero no se como enlazarlo desde B4A.

Me bastaria con una impresion en TXT sin HTML, dibujitos ni nada.

Gracias.
 

desof

Well-Known Member
Licensed User
Longtime User
Felicitaciones por la iniciativa de no siempre enviarnos al foro en ingles por que para algunos como yo es como caer al avismo.

Estuve leyendo atentamente la explicacion de la impresion pero me quedan algunos cabos sueltos.
Suponiendo que queremos imprimir en papel no en pdf desde un movil ¿Como conectamos la impresora al movil?

No me encaja lo del html ...
Gracias y perdon por la ignorancia

:sign0089:
 
Top