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:
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
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:
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:
Tampoco Cuesta Tanto.
Un Saludo
Jomagom