Blog de conocimiento gratuito: linux, programación, open source, bases de datos, android, frameworks, web e informática en general.
En este post vamos a ver cómo descargar un archivo en segundo plano usando JavaScript del lado del cliente y la función fetch para hacer peticiones HTTP.
Veremos cómo descargar un archivo como blob usando AJAX para después preguntar al usuario en dónde guardarlo, sugiriendo un nombre.
Lo bueno de esto es que podemos enviar parámetros para solicitar la descarga del archivo (por ejemplo, si el mismo estuviera protegido por contraseña o autentificación).
Normalmente podemos usar las herramientas de desarrollador del navegador en la computadora de escritorio usando F12 o con “Inspeccionar elemento” para revisar los errores y depurar nuestras aplicaciones web, pero cuando queremos hacerlo en móviles es un poco más complejo.
En este artículo te mostraré cómo usar las herramientas de desarrollador del navegador web en móviles, es decir, teléfonos o tabletas.
Siguiendo con mi racha de creación de instaladores o asistentes de instalación, hoy le tocó a mi sistema gratuito para estacionamiento o mi sistema gratis para parqueadero.
Como ya lo hice con mi sistema para restaurantes y después en mi sistema de ventas, ahora le toca a este sistema para estacionamientos.
En este post te mostraré cómo descargar el instalador del software gratuito para estacionamiento de modo que ya no tengas que configurarlo manualmente al menos en el caso de Windows.
En este artículo te voy a enseñar a rotar una imagen con HTML y JavaScript a través de canvas, de manera que podrás girar una imagen los grados que tú quieras, es decir, rotarla 90, 180, 270 o cualquier cantidad.
Veremos cómo cargar una imagen, pintarla en un canvas, agregarle rotación y después hacer cosas como descargar esa imagen o enviarla al backend que puede ser con Node, C#, PHP, etcétera.
Hoy vamos a ver cómo modificar o falsificar nuestro idioma y ubicación en un sitio web. Esto sirve a los programadores para:
También puede servir para otras cosas como para no revelar tu ubicación real a las páginas web o ver una página en otro idioma.
Por cierto, lo haremos con Google Chrome pero me imagino que cualquier navegador decente debe funcionar.
El día de hoy vamos a ver cómo imprimir tickets, recibos o facturas en una impresora térmica desde Angular usando el lenguaje de programación TypeScript y el lenguaje ESC POS para la impresora.
Básicamente vamos a ver cómo comunicar Angular con una thermal printer, pos printer o impresora POS (Epson, Xprinter, etcétera) e imprimir texto, darle formato, imprimir códigos QR, códigos de barras, imágenes, acentos y varias cosas que permitirán crear tickets desde Angular.
Vamos a usar un plugin gratuito y un conector en TypeScript que acabo de crear. Por cierto, el plugin también nos permitirá cortar el papel, abrir el cajón de dinero, definir caracteres personalizados e imprimir en red.
Nota: esto funciona en Windows, Linux, Raspberry Pi y con otro plugin podría incluso funcionar en Android con impresoras Bluetooth.
En este post voy a explicarte cómo puedes crear un conector para el plugin de impresoras térmicas y así poder imprimir desde cualquier lenguaje de programación que hable HTTP.
Como bien sabes, mi plugin no es más que un servidor web que te permite imprimir en impresoras POS, solo debes indicarle las operaciones que debe hacer.
Veamos entonces cómo imprimir en una impresora térmica usando cualquier lenguaje de programación y mi plugin gratuito.
El día de hoy vamos a hacer una cosa que varios me han pedido y que siempre he querido hacer: imprimir en una impresora térmica Bluetooth desde Android usando JavaScript.
Básicamente vamos a enviar un ticket a una thermal printer con Bluetooth desde el navegador web sin cuadros de diálogo ni cosas extrañas: tan solo usando un plugin gratuito desarrollado por mí y JavaScript puro.
Debido a que esto es hecho desde el navegador con JS luego puedes usarlo para imprimir en una impresora térmica Bluetooth desde Vue, React, Angular, TypeScript, etcétera: cualquier cosa que compile, use o traspile a JavaScript.