Imprimir a archivo en Windows 10: ¿Es posible el método clásico?

En los viejos tiempos se podía imprimir a un archivo y luego ese archivo «copiarlo» a la impresora e imprimirlo. ¿Se puede hacer eso en Windows 10?

Vista de escritorio Windows 10 con ventana de terminal copiando un archivo .prn
Windows 10 permite imprimir a archivo y luego copiarlo usando comandos como copy /b.

Sí. De hecho, Windows 10 todavía conserva esa posibilidad, aunque hoy está bastante escondida y depende del tipo de impresora.

Opción 1: Imprimir a un archivo (.prn)

Muchos controladores todavía tienen la casilla «Imprimir a un archivo». Al marcarla en el diálogo de impresión, se guarda un archivo .prn que contiene exactamente los datos que el driver enviaría a la impresora.

Luego puedes enviarlo usando:

copy /b archivo.prn \PCImpresora

Pero hay un detalle importante: el archivo sólo sirve para una impresora compatible con el mismo lenguaje. Si lo generaste para una HP PCL6 probablemente no funcionará en una Epson de inyección.

Opción 2: RAW al spooler

Windows tiene un servicio llamado Print Spooler que acepta trabajos RAW. Se puede usar PowerShell o la API de impresión para enviar un .prn directamente sin pasar por una aplicación. Esto es útil para automatizar impresiones.

Opción 4: Copiar al puerto TCP

Algunas impresoras escuchan en el puerto 9100 (JetDirect). Con herramientas como nc (netcat):

Diagrama de conexión TCP/IP al puerto 9100 usando netcat
Muchas impresoras aceptan datos en el puerto 9100 usando herramientas como netcat.
nc 192.168.1.100 9100 < archivo.prn

Muchísimas HP, Brother, Kyocera y otras aceptan esto.

Opción 5: PDF (el equivalente moderno)

Hoy la mayoría de la gente «imprime a un archivo» usando PDF. Luego ese PDF se imprime cuando se necesite. No es lo mismo que un .prn, porque el PDF necesita volver a procesarse por un driver.

Comparación entre archivo .prn y documento de Microsoft Print to PDF
El PDF es el equivalente moderno, pero requiere volver a procesarse por un driver.

¿Para qué sirve hoy un `.prn`?

Todavía tiene usos interesantes:

  • Reimprimir el mismo documento cientos de veces sin volver a renderizarlo.
  • Capturar exactamente lo que envía un driver.
  • Depurar problemas de impresión.
  • Enviar trabajos a impresoras industriales.
  • Automatizar impresión desde scripts.

Si tu idea es revivir el método clásico, sí, todavía es posible. Incluso puedes hacer algo como:

copy /b factura.prn "\SERVIDORHP LaserJet"

¿La idea es por nostalgia, o tienes un caso práctico en mente? Por ejemplo, generar el .prn una vez y luego reimprimirlo muchas veces.