¿Qué es "Imprimir en archivo" y se puede usar desde la línea de comandos?

12

Cuando selecciona "Imprimir en archivo" en un cuadro de diálogo de impresión de Gnome (no cups-pdf):

Imprimir archivo

... ¿Cuál es el comando real que se ejecuta? (Estoy interesado en la variante postscript, como en la imagen)

Por otro lado, tal vez no hay una llamada de comando; tal vez es gtk_print_operation_set_export_filenamede la nueva API de impresión Gtk + ?

En cualquier caso, ¿hay alguna forma de utilizar este código en particular desde la línea de comandos (no pdf2psy similares)? Digamos, usando lpr"imprimir en archivo" en un archivo postscript, como si estuviera usando el cuadro de diálogo anterior.

sdaau
fuente
3
AFAIK, esta es una característica del subsistema utilizado por algunas aplicaciones de GNOME y GTK + para imprimir cosas (algunas de ellas usan Cairo). lprinteractúa cupsdirectamente con , la opción de imprimir a archivo omite completamente el servidor de impresión. probablemente no llame a un comando, solo invoca la función de representación de El Cairo de una manera diferente, por lo que genera una salida pdf, postscript o svg a un archivo.
njsg
Ah, entonces es el cairo backend allí! ¿Alguna idea de si hay disponible una línea de comando comparable que pueda invocar esta función de representación de la misma manera que lo hace el diálogo de impresión? Muchas gracias por el comentario, @njsg - ¡salud!
sdaau
3
Puede haber alguna herramienta de línea de comandos de cairo (realmente no lo sé), pero supongo que es un poco complicado, ya que muchas aplicaciones usan cairo para imprimir sus propios documentos, y esa aplicación es la que puede entender el formato del archivo . Cairo no podrá leer formatos de archivo aleatorios. Lo más cercano que puede obtener es verificar si el programa con el cuadro de diálogo tiene alguna opción de línea de comandos para imprimir un archivo sin abrir la GUI.
njsg
Gracias por explicar que @njsg: la captura de pantalla anterior se tomó del evincecuadro de diálogo de impresión; desafortunadamente, no puedo ver ningún cambio de línea de comando evinceque haga algo como esto ... ¡Salud!
sdaau
Esto es solo una convención de interfaz de usuario, cada programa puede, en principio, hacer lo que quiera cuando se selecciona "Imprimir en archivo".
vonbrand

Respuestas:

4

Puede usar el cups-pdfpaquete como una solución independiente de gnome. Después de instalar el paquete, agregue la impresora PDF utilizando la interfaz web de cups http://localhost:631como se describe aquí (' General' como fabricante de la impresora, CUPS-PDF como controlador ).

Para su comodidad, cambie el directorio de salida con la opción Outen /etc/cups/cups-pdf.conf, como ${HOME}o lo que desee. Luego haga lo sugerido por @ Noam para imprimir en el archivo.

J. Katzwinkel
fuente
2
lpr -P "Print_to_PDF" file_to_print

Para obtener la lista de impresoras configuradas actualmente, ejecute lpstat -p -d.

Noam Kremen
fuente
mmm, -P "Print_to_PDF" me da este error "lpr: La impresora o clase no existe".
Aubrey
0

También puede usar el comando de impresión lp para imprimir un archivo en la impresora predeterminada (o única) del sistema:

lp filename

o a una impresora específica

lp -d printer filename
Andriy Simonov
fuente
0

Print-to-file envía el documento no a la impresora sino a un documento pdf.

Lo mismo se puede hacer con el sistema de impresión de tazas, que sus aplicaciones usan cuando envían comandos de impresión.

Utiliza la herramienta de filtro de tazas. Convierte efectivamente un documento. Se convierte a pdf por defecto.

$ cupsfilter inputfilename > outputfilename.pdf

Como se describe aquí .

Markling
fuente