Conceptos impresión

Saltar a: navegación, buscar


Formatos comunes de datos de impresión

PostScript: El formato de datos de impresión tradicional

Linux utiliza un formato de datos común para la impresión: el formato PostScript. Esto significa que los programas de aplicación normalmente producen una salida PostScript al imprimir.

Algunas impresoras aceptan PostScript de forma nativa, es decir, las impresoras PostScript pueden imprimir la salida de impresión de la aplicación directamente.

Otras impresoras necesitan Ghostscript más un controlador de impresora que convierta PostScript al "lenguaje" (es decir, datos específicos del modelo de impresora) que acepte la impresora en cuestión.

En general, "controlador" significa software y datos específicos del modelo de dispositivo.

Más información:

PDF: El reciente formato de datos de impresión

Existe un cambio generalizado de PostScript a PDF como formato estándar de los trabajos de impresión. Este cambio es defendido por el grupo de trabajo OpenPrinting de la Fundación Linux y el autor de CUPS. Véase http://www.linuxfoundation.org/collaborate/workgroups/openprinting que dice:

PDF es el formato de impresión estándar a partir de CUPS 1.6.x

Todas las aplicaciones de escritorio importantes (GTK/GNOME, Qt/KDE, 
LibreOffice/OpenOffice.org, Firefox, Thunderbird, ...) envían los 
trabajos de impresión en PDF y ya no en PostScript por defecto. 
Además, existe una cadena completa de filtros CUPS para procesar 
trabajos de impresión en PDF que está disponible y ya se utiliza.

El autor de CUPS Mike Sweet/Apple han decidido no incluir más los 
filtros CUPS específicos de Linux en el CUPS y hemos acordado 
mantenerlos en OpenPrint mantenerlos en OpenPrinting.

Aquí hemos hecho algo de limpieza y hemos discontinuado los filtros 
para el flujo de trabajo PostScript-céntrico en favor del flujo de 
trabajo PDF, lo que significa que el estándar para CUPS en Linux 
(usando CUPS más nuestro paquete cups-filters) es el procesamiento 
de trabajo basado en PDF, permitiendo que cada entrada no PDF sea 
convertida a PDF primero, las opciones de gestión de páginas se 
aplican mediante un filtro pdftopdf y que Ghostscript sea llamado 
con PDF como entrada.

La única excepción es si los datos de entrada son PostScript y la 
impresora es PostScript o el controlador de impresora requiere 
PostScript como entrada. No convertimos PostScript en PDF y de 
nuevo en PostScript sino que pasamos PostScript a través del filtro 
pstops como antes.

Teniendo este flujo de trabajo pedimos amablemente a todos los 
desarrolladores de drivers que no creen PPDs/drivers para impresoras 
que no sean PostScript que requieran exclusivamente PostScript. Los 
archivos PPD deberían aceptar PDF o CUPS Raster. Consulte también 
nuestra página diseño/empaquetado http://www.linuxfoundation.org/collaborate/workgroups/openprinting/writingandpackagingprinterdrivers

Más información en nuestra página sobre el flujo de trabajo de impresión PDF

http://www.linuxfoundation.org/collaborate/workgroups/openprinting/pdf_as_standard_print_job_format

y en la página de filtros de Cups

=== PostScript frente a PDF como formato de trabajo de impresión estándar ===
A diferencia de PostScript, el formato PDF es un estándar de facto que se utiliza comúnmente para el intercambio de documentos en todo el mundo, lo que hace que el formato PDF sea el más adecuado para ser utilizado también como formato de trabajo de impresión estándar, a pesar de que, en particular en relación con la impresión, el formato PDF tiene desventajas en comparación con PostScript.

Con PDF como formato de trabajo de impresión estándar, las impresoras PostScript tradicionales ya no pueden imprimir directamente la salida de impresión de la aplicación, por lo que se requiere un paso de conversión en el flujo de trabajo de impresión que convierta PDF en PostScript (normalmente a través de Ghostscript). Pero también existen impresoras PostScript+PDF que pueden imprimir tanto PostScript como PDF directamente.

Para PostScript existen tres versiones (denominadas "niveles"): Nivel 1, nivel 2, nivel 3, cada uno de los cuales es un superconjunto del anterior (véase https://en.wikipedia.org/wiki/PostScript). Además, existe la especificación DSC (véase http://en.wikipedia.org/wiki/Document_Structuring_Conventions).

https://www.linuxfoundation.org/collaborate/workgroups/openprinting/cups-filters.

No existe el formato PDF por excelencia. Para PDF hay varias versiones y muchos subconjuntos diferentes donde cada subconjunto puede tener varias versiones diferentes (por ejemplo, PDF/A-1 PDF/A-2 PDF/A-3, PDF/X-1, PDF/X-1a, PDF/X-3, PDF/X-4, PDF/X-4p, PDF/X-5, PDF/X-5g, PDF/X-5pg, PDF/X-5n, PDF/VT-1, PDF/VT-2, ... y así hasta la saciedad) véase

http://en.wikipedia.org/wiki/Portable_Document_Format

y siga sus enlaces.

PDF es sólo parcialmente un estándar abierto. Todavía existen algunas tecnologías que podrían utilizarse en los archivos PDF, que sólo están definidas por Adobe y siguen siendo propietarias (véase http://en.wikipedia.org/wiki/Portable_Document_Format).

En consecuencia, las aplicaciones y herramientas de software libre que admiten PDF en general no pueden admitir todas las funciones posibles que admiten los programas originales de Adobe (véase Adobe Reader). Adobe está inventando cada vez más funciones nuevas que tardan en incorporarse a los estándares abiertos y luego un tiempo adicional hasta que son compatibles con las aplicaciones y herramientas de software libre.

Cuando se imprime "sólo PDF" es básicamente más o menos suerte lo que resulta como impresión porque depende de cuánta "inteligencia" incorporada tienen los programas (normalmente Ghostscript) que convierten los datos "sólo PDF" en datos específicos de la impresora.

Por ejemplo, la transparencia es problemática por diseño, véase http://en.wikipedia.org/wiki/Portable_Document_Format#Transparency y http://en.wikipedia.org/wiki/Transparency_%28graphic%29#Transparency_in_PDF

En contraste con "sólo PDF" que tiene millones de características de lujo (también pensar en diversos tipos de elementos interactivos y así sucesivamente) PDF/A-1 es un subconjunto de toda la especificación PDF que está intencionalmente destinado a tener sólo un conjunto mínimo de características para trabajar estable en el tiempo. Pero contradictoriamente incluso PDF/A se mejora con nuevas características a lo largo del tiempo, ver http://en.wikipedia.org/wiki/PDF/A

Esto significa que cuando uno quiere asegurarse de que la impresión tiene el aspecto deseado, uno debe dejar que la aplicación produzca PDF/A-1. Desafortunadamente, la mayoría de las aplicaciones no soportan PDF/A. Normalmente las aplicaciones sólo soportan "sólo PDF".

También existe PDF/X en varias versiones (PDF/X-1a,... PDF/X-4, PDF/X-4p, PDF/X-5pg,...), véase http://en.wikipedia.org/wiki/PDF/X

archivos PPD: Opciones específicas de la impresora

Los archivos PostScript Printer Description (PPD) enumeran los valores y opciones específicos de la impresora y las posibles opciones para cada opción como:

  • Tamaño de página: A4, Carta, Legal
  • Ranura de entrada de papel: Predeterminado, Sobre, Alimentación manual
  • Resolución de impresión: 300x300dpi, 600x600dpi

Los programas de aplicación utilizan archivos PPD para mostrar las opciones específicas de la impresora en sus cuadros de diálogo de impresión y para obtener valores específicos de la impresora que son de interés cuando las aplicaciones producen salida PostScript o PDF para impresión como:

  • Impresora monocromo o color
  • Valores de área imprimible para cada tamaño de página

Las herramientas de configuración de impresoras (por ejemplo, el módulo YaST Printer module) utilizan los siguientes valores de los archivos PPD para listar los modelos de impresora:

  • Fabricante de la impresora
  • Nombre del modelo

Para las impresoras PostScript los fabricantes proporcionan un fichero PPD para cada modelo de impresora.

Para otras impresoras (es decir, impresoras no PostScript), el paquete de software del controlador de impresora suele contener archivos PPD para los modelos de impresora compatibles con el controlador de impresora en cuestión. En el caso de las impresoras no PostScript, el archivo PPD contiene información sobre el programa controlador de impresora que debe utilizarse y las opciones específicas de la impresora disponibles para el controlador en cuestión.

Más información:

CUPS: El servidor entre el usuario y la impresora

Common Unix Printing System (CUPS) es el sistema de impresión base desarrollado por Apple Inc. para Mac OS X y otros sistemas operativos tipo UNIX, en particular Linux.

Un dispositivo de impresión no es utilizado directamente por los programas de aplicación del usuario, sino a través de una cola de impresión. Cuando varios programas de aplicación envían trabajos de impresión simultáneamente, estos trabajos se colocan en una cola y se envían uno tras otro al dispositivo de impresión. Incluso cuando un único usuario con un programa de aplicación envía un único trabajo de impresión, la cola de impresión retiene el trabajo para que el programa de aplicación pueda continuar y el usuario no tenga que esperar a que el dispositivo de impresión haya terminado para imprimirlo realmente.

CUPS es el software que debe ejecutarse en un ordenador para que los programas de aplicación puedan enviar su salida de impresión a CUPS, que pone en cola los trabajos de impresión y los procesa uno a uno. Para cada cola de impresión hay un archivo PPD que CUPS proporciona a los programas de aplicación para que las opciones específicas de la impresora estén disponibles en los cuadros de diálogo de impresión.

En particular, para las impresoras no PostScript, CUPS ejecuta el controlador de impresora y envía su resultado al dispositivo de impresión. Para ello, CUPS debe saber qué controlador de impresora pertenece al dispositivo de impresión y cómo está conectado el dispositivo de impresión al ordenador para que CUPS pueda enviar los datos de impresión al dispositivo de impresión.

Por lo tanto "configurar una impresora" significa "configurar una cola de impresión" y decirle a CUPS para la cola en particular:

  • Cómo está conectado el dispositivo de impresión al ordenador
  • Qué controlador de impresora pertenece al dispositivo de impresión (a través del archivo PPD)

Estrictamente hablando, desde el punto de vista interno del ordenador, normalmente no conoce los dispositivos de impresión reales, sino sólo las colas de impresión. Lo que CUPS y los programas de aplicación llaman "impresoras" no suelen ser los dispositivos de impresión reales, sino sólo sus colas de impresión asociadas. Este uso impreciso de la palabra "impresora" para la representación interna del ordenador puede llevar a confusión cuando no está claro para el usuario lo que realmente significa cuando CUPS o los programas de aplicación muestran que todo está bien con la "impresora". Por lo general, esto significa que el estado de la cola de impresión es correcto (por ejemplo, "listo"), pero el estado del dispositivo de impresión real podría ser diferente al mismo tiempo (por ejemplo, "sin papel").

Más información:

Controladores de impresora: Hacer que la impresora imprima

En general, "controlador" significa software y datos específicos de un modelo de dispositivo. El controlador de impresora produce los datos finales específicos de la impresora que realmente permiten que ésta imprima.

Cada controlador sólo acepta determinados formatos de datos de impresión y sólo produce datos compatibles con determinados modelos de impresora. Si se utiliza un controlador incorrecto, se envían datos erróneos a la impresora, lo que produce impresiones con mal aspecto, impresiones caóticas o ninguna impresión. Incluso si una impresora aparece en la lista como "compatible", puede haber pequeñas diferencias entre la salida de impresión PostScript de una aplicación y la impresión real en el papel cuando el controlador no está optimizado específicamente para el modelo de impresora concreto (véase SDB:Adquisición de una impresora y compatibilidad).

Las impresoras PostScript no necesitan un controlador de impresora porque no necesitan software de controlador que convierta PostScript en otro "lenguaje" que la impresora realmente "entienda". Por ejemplo, un lenguaje de impresora de este tipo es PCL (Lenguaje de Comandos de Impresora desarrollado por Hewlett-Packard). Las impresoras PostScript sólo necesitan un archivo PPD que coincida con el modelo concreto para poner a disposición de los programas de aplicación las opciones específicas de la impresora. Otras impresoras (es decir, impresoras que no son PostScript) necesitan un software de controlador de impresora más un archivo PPD que coincida con el controlador en particular.

Por lo general, no existe el "único controlador" ni el "mejor controlador" para un modelo de impresora en particular. Cuanto mejor sea el hardware de la impresora, más controladores diferentes estarán disponibles, donde cada controlador es mejor solo para un caso de uso particular.

Por ejemplo, una impresora láser a color PostScript+PCL podría funcionar como

  • Impresora PostScript usando un PPD PostScript
  • impresora PCL en color que utiliza un PPD para un controlador PCL en color
  • impresora PCL monocromática que utiliza un PPD para un controlador PCL monocromático

La impresión a través de un controlador PCL suele ser más rápida pero con menos calidad que imprimir en modo PostScript y usar un controlador PCL monocromático es probablemente la mejor manera de hacer cumplir la impresión monocromática rápida.

Más información sobre las impresoras PostScript+PCL:

paquetes de software de controlador de impresora openSUSE

Consulte la sección "Controlador" en Módulo de YaST Impresora sobre cómo instalar paquetes de software de controlador de impresora con el módulo de configuración de impresora YaST.

Hasta openSUSE 11.3, el paquete cups-drivers era un enorme paquete todo en uno que contenía varios controladores de impresora independientes y varios conjuntos de archivos PPD.

Desde openSUSE 11.4, los siguientes paquetes de controladores de impresora y archivos PPD se separan del paquete cups-drivers y el propio paquete cups-drivers se elimina:

  • gutenprint: el controlador Gutenprint y sus PPD correspondientes
  • splix: el controlador SpliX y sus PPD correspondientes
  • m2300w: el controlador m2300w y sus PPD correspondientes (sin mantenimiento => descartado desde openSUSE 13.2)
  • OpenPrintingPPDs-ghostscript: PPD para controladores integrados de Ghostscript
  • OpenPrintingPPDs-hpijs: PPD para el controlador HPIJS para impresoras que no son de HP
  • OpenPrintingPPDs-postscript: PPD para impresoras PostScript

Además, existe la solución de controlador de imágenes e impresión de Linux (HPLIP) de HP para impresoras y escáneres HP en dispositivos HP todo en uno. Incluye el controlador de impresora Ghostscript HPIJS con PPD coincidentes y el controlador de impresora CUPS nativo HPCUPS con PPD coincidentes, además del controlador de escáner SANE hpaio. openSUSE proporciona HPLIP en los paquetes hplip y hplip-hpijs y desde openSUSE 12.1 adicionalmente en el paquete hplip-sane, consulte SDB:Cómo configurar una impresora HP.

Además, desde openSUSE 12.1 existe el Epson Inkjet Printer Driver (ESC/P-R) para Linux. openSUSE lo proporciona en el paquete epson-inkjet-printer-escpr.

Finalmente, se proporcionan más archivos PPD de fabricantes de impresoras para impresoras PostScript en el paquete PPD de fabricante.

Con respecto a las "Actualizaciones de versión para paquetes de controladores de impresora", consulte SDB: Instalación de una impresora.

Más información:

Desarrollo del controlador de impresora estándar de Linux

El DDK (kit de desarrollo de controladores) LSB (Linux Standard Base) se puede utilizar para proporcionar paquetes de controladores de impresora independientes de la distribución para Linux.

Los fabricantes de impresoras y los desarrolladores de controladores de impresora pueden empaquetar su software de controlador de impresora y ponerlo a disposición como paquete de software independiente de la distribución.

De esta forma, los usuarios pueden instalar esos controladores si su distribución no los incluye o no puede enviarlos o solo los envía en una versión desactualizada.

Más información:

Expectativas del usuario

La impresión debe funcionar sin llamar la atención.

Expectativas del usuario final

Los expertos en usabilidad Peter Sikking y Jan Mühlig realizaron una investigación con usuarios promedio reales. Peter Sikking escribió en http://www.mmiworks.net/eng/publications/labels/openPrinting.html

1ª regla de la imprenta: la imprenta no existe

http://mmiworks.net/ empresa colaboradora de m+miworks
relevante http://relevantive.de/ investigación de usuario realizada
al inicio de este proyecto.

Mostró que para los usuarios no existe una actividad productiva que valga la pena
entre el momento en que quieren ver algo impreso y
el momento en que sale de la impresora.
Tenía curiosidad por saber cuáles son las expectativas de los usuarios.
aparte de ponerlo en papel cuando lo impriman.
Así que Jan hizo algunas pruebas de usuario.

Y adivina qué: no existe tal cosa como la impresión.

No existe como una tarea, como una actividad significativa.
En un momento decides verlo en papel,
el siguiente sale de la impresora.

Esto significa que los usuarios finales normalmente no están interesados en funciones de impresión sofisticadas ni en innovaciones famosas a expensas de cambios incompatibles. Lo que quieren los usuarios finales es que la impresión funcione sin llamar la atención.

Expectativas del administrador del sistema

Lo que quieren los administradores de sistemas experimentados es que la impresión funcione según lo diseñado y documentado por los proyectos ascendentes correspondientes sin necesidad de atención especial.

Esto significa que la impresión debería funcionar sin comportamientos inesperados, en particular sin cosas especiales específicas de openSUSE y sin cambios de comportamiento repentinos.

Por lo tanto, con respecto a la "Impresión", openSUSE cumple plenamente con la varios proyectos upstream (principalmente CUPS, cups-filters, Ghostscript y proyectos de controladores de impresora).

Ver también