Cancelar trabajo de impresión con C++

En este post te quiero compartir un código de C++ para listar y cancelar trabajos de impresión de la cola de impresión de una impresora en Windows. Con el código C++ vamos a usar la API de Windows (win32) con EnumJobs para obtener los trabajos de impresión de una impresora determinada, y después, opcionalmente, podremos cancelar ese trabajo con SetJob ya sea basándonos en el índice, usuario o cualquier otro dato del trabajo. ...

febrero 17, 2025 · 3 min · 607 palabras · Parzibyte

Copiar bytes de Golang a JavaScript con WebAssembly

Gracias a WebAssembly podemos ejecutar código de otros lenguajes de programación desde el navegador web con JavaScript. La ventaja de WASM es que, aparte de ser rápido, permite programar en otro lenguaje y aprovechar las librerías presentes en el mismo. Personalmente he usado Golang con WebAssembly para crear un generador de credenciales, códigos QR y códigos de barras. Todo el procesamiento y generación de imágenes se hace con Go, para luego exportar los resultados a JavaScript. En este post voy a documentar **cómo exportar un arreglo de tipo byte ([]**byte) de Go a un Uint8Array de JavaScript, ya que, como te lo dije anteriormente, esto sirve cuando creamos un archivo binario con Go y queremos exportarlo a JavaScript. Además, un Uint8Array sí puede ser transportado a través de un WebWorker usando el structured clone algorithm. ...

enero 21, 2025 · 3 min · 633 palabras · Parzibyte

Imprimir PDF con Ghostscript en Windows de manera programada

Revisando y buscando maneras de imprimir un PDF desde la línea de comandos me encontré con Ghostscript que permite imprimir un PDF sin confirmación del usuario. Personalmente prefiero PDFtoPrinter del cual ya hasta tengo un plugin. Veamos cómo usar Ghostscript (gswin64) para automatizar la impresión de PDF. ...

enero 20, 2025 · 2 min · 294 palabras · Parzibyte

Hacer pruebas en impresora térmica Bluetooth Android

Esta semana estuve recreando la API del plugin para impresoras térmicas en Android (HTTP a ESC POS Bluetooth) y escribí algunos archivos para probar la API, así que hoy vengo a compartirlos. He usado cURL. La IP de mi dispositivo Android donde se ejecuta la aplicación es http://192.168.0.6 y el puerto es el 8000. Para imprimir hay que hacer la petición a /imprimir. Puedes descargar el plugin en: API HTTP a ESC POS Bluetooth para Android https://parzibyte.me/blog/posts/plugin-gratuito-impresoras-termicas-bluetooth-android/ ...

enero 17, 2025 · 6 min · 1247 palabras · Parzibyte

Limpiar clave PEM

Hoy te enseñaré a extraer la cadena base64 de una clave PEM usando una función de JS que puedes usar en el propio navegador web o en la consola de depuración, así como en Node. ...

enero 16, 2025 · 1 min · 175 palabras · Parzibyte

Foco con Telegram, apagador de 3 vías, relevador y ESP8266

Encender un foco con un Bot de Telegram es posible usando una tarjeta como la NodeMCU ESP8266 ayudándonos de un relevador y un apagador de 3 vías. El apagador de 3 vías (apagador de escalera) también funcionará para poder controlar la bombilla manualmente; así puedes tener 2 opciones: controlar una bombilla con el Bot de Telegram y al mismo tiempo como si fuera un interruptor normal. En este post te mostraré cómo apagar y encender una bombilla usando un Bot de Telegram, la NodeMCU ESP8266 y un relevador. Voy a enseñarte el circuito de conexión y el código de la tarjeta para que se pueda conectar al wifi consultando la API de Bots de Telegram y accionando el relevador como sea necesario. Una NodeMCU ESP8266 no puede proveer los 5v que necesita el relevador, así que vamos a usar una fuente de poder externa para alimentar a la tarjeta y para activar dicho relevador. Cuando hicimos esto con Arduino el transistor no fue necesario porque el Arduino sí puede sacar 5v. De cualquier manera, el Arduino UNO no tiene wifi así que prefiero la ESP8266. ...

enero 4, 2025 · 10 min · 2083 palabras · Parzibyte

Servidor HTTP en Android con Flutter

El día de hoy te mostraré cómo crear un servidor HTTP (servidor web) en Android usando Flutter y Dart. Al final vas a poder levantar un web server desde una APK programada con Android y, obviamente, escuchar peticiones a través de toda la red o desde el propio dispositivo. Vamos a usar la clase HttpServer. ...

diciembre 19, 2024 · 3 min · 564 palabras · Parzibyte

Imprimir automáticamente todos los PDF de una carpeta

En este post te voy a enseñar a designar una carpeta para imprimir todos los PDF que estén dentro de ella automáticamente. Es decir, imprimir todo PDF descargado en esa carpeta y que se imprima de forma masiva. Veamos cómo imprimir lo que cae o se descarga en una carpeta. Todo PDF que pegues, muevas o descargues en ese directorio será impreso automáticamente en la impresora que designes y puedes hacerlo en masa, ya que puedes imprimir todos los PDF de una carpeta automáticamente. Para ello he programado un vigilante que revisa el contenido de la carpeta periódicamente (cada 1 segundo) y en caso de detectar algún PDF lo imprime al instante. ...

diciembre 18, 2024 · 3 min · 542 palabras · Parzibyte

Guía para imprimir en plugin versión 1 desde Android

En este artículo te voy a enseñar la guía para imprimir en una impresora térmica conectada a una computadora desde JavaScript en un teléfono Android. Es decir: Vas a tener una aplicación web programada con JavaScript Usando el navegador del móvil Android vas a acceder a dicha aplicación web Por otro lado, en una computadora de escritorio, tendrás conectada la impresora térmica y mi plugin versión 1 Desde la app web, con un botón o acción del usuario vas a invocar a una APK La APK que es como un puente o proxy se va a comunicar con el plugin de la computadora Dicho con otras palabras vas a imprimir desde Android a una computadora de la red local. La APK adicional servirá porque los navegadores no permiten hacer peticiones http a sitios que no cuenten con https, y las direcciones ip de la red local no tienen SSL por obvias razones. Finalmente, explicado con otras palabras, la arquitectura será: Código JavaScript del navegador web en Android -> Aplicación APK -> Plugin escuchando en computadora Veamos cómo hacerlo. ...

diciembre 12, 2024 · 6 min · 1105 palabras · Parzibyte

Añadir tasa de cambio en sistema de información

Hoy te voy a mostrar un ejemplo de programación para agregar un módulo de tasa de cambio en un software. Voy a enseñarte el algoritmo y un ejemplo de código para que puedas modificar los precios según una tasa, con la posibilidad de tener el sistema multimoneda o con varias divisas. Veamos cómo añadir una tasa de cambio para basar tus precios en otra moneda, por ejemplo, el dólar. ...

diciembre 6, 2024 · 4 min · 640 palabras · Parzibyte