• Publicidad

PDF::API2 direccionar PDF a una bandeja de impresora

Aquí encontrarás todo lo que sea específicamente acerca de módulos de Perl. Ya sea que estás compartiendo tu módulo, un manual o simplemente tienes una duda acerca de alguno.

PDF::API2 direccionar PDF a una bandeja de impresora

Notapor silva » 2015-09-08 07:05 @336

Agradecería si me pudiesen orientar con lo siguiente:

Utilizo PDF::API2 para generar documentos PDF. Necesitaría incorporarle una clausula para que la impresión se realice en una bandeja de la impresora. ¿Cómo puedo hacerlo?

¡Gracias!
silva
Perlero nuevo
Perlero nuevo
 
Mensajes: 82
Registrado: 2011-05-24 05:59 @291

Publicidad

Re: PDF::API2 direccionar PDF a una bandeja de impresora

Notapor explorer » 2015-09-08 07:33 @356

Yo supongo que estás en Windows...

Entonces, puedes intentar usar Win32::Printer, que permite, con el atributo source, indicar la procedencia del papel a usar.

Lo malo... que la documentación dice que este módulo es obsoleto, así que a lo mejor te resulta muy complicado de instalar.

Depende un poco de cómo sea tu impresora. En algunas de ellas, el controlador exporta una ruta para cada una de las bandejas de la impresora, por lo que vale con hacer un open() e imprimir el documento en ella.

Aquí hay algún ejemplo: http://www.perlmonks.org/?node_id=127684

Otros módulos: Printer

No he encontrado más, lo siento.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: PDF::API2 direccionar PDF a una bandeja de impresora

Notapor silva » 2015-09-08 07:37 @359

¡Gracias por la respuesta! Estoy trabajando en Linux. ¿Cómo puedo hacerlo desde Linux?
silva
Perlero nuevo
Perlero nuevo
 
Mensajes: 82
Registrado: 2011-05-24 05:59 @291

Re: PDF::API2 direccionar PDF a una bandeja de impresora

Notapor explorer » 2015-09-08 08:01 @376

Desde la línea de comandos, si tienes instalado el paquete cups, puedes preguntar y ajustar las opciones de la impresora.

Por ejemplo, si ejecutas
Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
$ lpoptions -l
PrintoutMode/Print Quality: Draft *Normal High
PageSize/Page Size: Custom.WIDTHxHEIGHT Letter *A4 11x17 A3 A5 B5 Env10 EnvC5 EnvDL EnvISOB5 EnvMonarch Executive Legal
InputSlot/Media Source: *Default Upper Middle Lower Multipurpose Automatic Manual
Duplex/Double-Sided Printing: DuplexNoTumble DuplexTumble *None
PrinterResolution/Resolution: *FromPrintoutMode 300x300dpi 600x600dpi 1200x1200dpi
Coloreado en 0.004 segundos, usando GeSHi 1.0.8.4
Observa que la línea InputSlot es la indica la bandeja de donde va a salir el papel.

Entonces, vale con ejecutar el comando otra vez para modificarlo a lo que queremos:
Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
$ lpoptions -o inputslot=Middle
$ lpoptions -l
PrintoutMode/Print Quality: Draft *Normal High
PageSize/Page Size: Custom.WIDTHxHEIGHT Letter *A4 11x17 A3 A5 B5 Env10 EnvC5 EnvDL EnvISOB5 EnvMonarch Executive Legal
InputSlot/Media Source: Default Upper *Middle Lower Multipurpose Automatic Manual
Duplex/Double-Sided Printing: DuplexNoTumble DuplexTumble *None
PrinterResolution/Resolution: *FromPrintoutMode 300x300dpi 600x600dpi 1200x1200dpi
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4

Ahora solo queda enviar el documento a la impresora.
Sintáxis: [ Descargar ] [ Ocultar ]
Using bash Syntax Highlighting
$ pdftops archivo.pdf | lpr
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4
(suponiendo que mi impresora no sepa imprimir un PDF, pero sí un PostScript, necesito convertirlo antes de pasárselo.)

Tienes más información aquí, y en el resto de la documentación de CUPS.

En Perl tienes unos cuantos módulos para gestionar CUPS, como por ejemplo Net::CUPS, o imprimir directamente (sin pasar por lpr), por medio de Net::Printer.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España


Volver a Módulos

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados