Imprimir contenido Base64 como Binario
Hola amigos del foro.
Tengo la siguiente situacion: Recibo un string en Base64 desde un servidor WebService. Este contenido Base64 se procesa y se graba en disco como un Archivo PDF.
Una vez que el archivo PDF, esta grabado en disco, lo tomo con una aplicacion externa y lo envio a la impresora de Tikets (80x80). La forma que uso para imprimirlo es esta:
Esto Funciona bien!, La boleta en PDF se imprime correctamente. Pero el proceso es muy lento. Mas de 20 segundos, entre grabar el archivo, rescatarlo, y luego imprimirlo. La pregunta es: ¿Existe la manera de poder tomar el contenido en Base64, llevarlo a binario, y luego imprimirlo en la impresora de tikets directamente? (sin tener que grabar para luego rescatar y luego imprimir). De antemano gracias. Saludos Jose Miguel. |
Cita:
|
Hola Casimiro.
La verdad es que el internet, en la localidad de mi cliente, es malo. Entonces desde que la boleta va al Servicio de Impuestos internos, vuelve, y se imprime. Pasan cerca de 20 segundos. Por eso quiero ver la posibilidad, de prescindir de la aplicacion externa, para enviar directamente el archivo a la impresora. De todas maneras. Gracia por responder. Saludos. Jose Miguel. |
Si dices que lo lento es la conexión a internet, entonces ese es el problema, ¿no?
Porque una vez que tienes el fichero a imprimir, da igual que lo guardes en disco o no, eso no lleva ni un segundo. Seguramente no te he entendido. |
Hola Casimiro.
Como te comente. El internet es lento. Pero tambien estoy usando una aplicacion externa para abrir el archivo PDF, e imprimirlo. La aplicacion: "PdfToPrinter". Entonces el internet Lento, sumado a que cada vez que llega el archivo PDF, hay que abrir la aplicacion "PDFToPrinter", para que imprima, lo hace mas lento aun. Por eso pense, que imprimiendo el PDF, en forma directa podria ahorrar unos valiosos segundos, como 6 u 8 segundos. nose.. cualquier segundo menos, me suma rapidez. De todas maneras, como me comentas, revisare el codigo, para ver donde puedo agilizar algo el proceso. Pero si, de todas maneras, conoces una forma de impresion directa, lo agradeceria. Saludos. Jose Miguel. |
Hola, pero has hecho cálculos en cuánto tarda cada apartado.
Dudo mucho que abrir un pdf con un soft externo tarde 8 segundos. Y si es así, cámbialo por otro. Pon un temporizador en tu código y calcula cuánto tarda cada parte, algo así como:
|
Hola Casimiro.
Logre reducir los tiempos de impresion a 10segundos. Pero aun queda la duda, de como imprimir directamente un PDF en BASE64, directo a la impresora. Sin utilizar un lector de PDF? Saludos. JoseMiguel. |
Es simple, ¿la impresora entiende base64?
Si la respuesta es 'SÍ' entonces envíalo a la impresora directamente. Si la respuesta es 'NO' entonces tendrás que decodificarlo para obtener el PDF y luego imprimirlo. El que lo mantengas en memoria, o lo guardes en disco antes de enviarlo a la impresora, es algo que apenas afectará al tiempo, serán décimas de segundo. |
La franja horaria es GMT +2. Ahora son las 18:38:03. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi