Es "trama" es un formato específico o un término general (en relación con las tazas El sello de la biblioteca)

Pregunta hecha: hace 8 meses Ultima actividad: hace 8 meses
up 3 down

He visto relativos a la biblioteca CUPS, estos dos archivos:

No estoy seguro de qué raster.c hace exactamente todavía, pero imagetoraster.c esencialmente toma un PNG/JPEG/etc. y "lo convierte a formato raster" que suena. Yo no entiendo muy bien lo que esto significa exactamente. Algunas impresoras son "impresoras PostScript", otros son "impresoras de mapa de bits", pero no estoy seguro de si este término "trama" significa que hay una especie de "Formato de la trama de la impresora", como PNG o JPG, o si es sólo un conjunto de píxeles del algún tipo, o alguna otra cosa. Parece que las impresoras tendrían algún tipo de formato estándar, pero que calificó de "trama" parece un poco engañoso ya que la trama es básicamente una representación de píxeles arbitraria de algo (de mi entendimiento).

Con la esperanza de que uno podría aclarar qué se entiende exactamente por raster en esta biblioteca filtro de CUPS/impresión. Sigo pensando que es en realidad un IANA MIME tipo de algún tipo, pero no estoy seguro.

1 respuesta

up 1 down accepted

Nota preliminar: ¿Qué usted cita no es la API nativa de CUPS. Es parte de la biblioteca del proyecto OpenPrinting. OpenPrinting suministros y mantiene un conjunto de filtros que pueden integrarse y se acopló en las tazas, principalmente para los usuarios de Linux, ya que Apple ya no es compatible con este sistema operativo directamente y en su lugar entregó las respectivas partes de código CUPS a la Fundación Linux...


En el marco de tazas y los dos archivos de código fuente de la biblioteca que usted mencionó, "trama" es un formato de trama específico definido aquí (y en realidad se ha registrado en IANA como tipo mime 'application/vnd.cups-raster'):

Por lo tanto, esto no es ni TIFF, PNG, ni, ni JPEG. CUPS-trama es un formato de imagen específico para vasos y desarrollado para ser utilizado con CUPS.

Este formato tiene un papel de intermediario para algunos tipos de trabajos de impresión cuando se requiere una conversión de un formato de documento imprimible (como PostScript, PDF, TIFF, JPEG, PNG, texto,...) a un formato tal cual la impresora puede consumir. (Si usted compra una impresora de hoy, es probable que alrededor del 95% que se puede consumir directamente PDF - por lo que no se requiere ninguna conversión real)

Sin embargo, si no hay una impresora PDF habilitado (como son los modelos más antiguos, como muchos dispositivos HP PCL-only), entonces usted necesita para convertir su formato imprimible del agrado de la impresora. Se puede ver el papel de "intermediario" de CUPS trama en las posibles cadenas de conversiones de formato de archivo que copas pueden configurar automáticamente para cada trabajo de impresión:

  ## FILE FORMAT CONVERSIONS
  PDF -> CUPS-raster -> PCL6     # PCL6-consuming printer
  PDF -> CUPS-raster -> PCL3     # PCL3-consuming printer
  PDF -> CUPS-raster -> ESC/P    # EPSON's ESC/P consuming printer

Para llevar a cabo estas conversiones, CUPS emplea una cadena de "filtros", que convierten de un formato a otro. Se construye estas cadenas automáticamente para cada trabajo de impresión, en función de una necesidad actual como señalado por la entrada de impresión y necesario (por la impresora de destino) de salida:

  ## CUPS FILTERING CHAIN EXAMPLES
  (PDF input)        -> pdftoraster   -> rastertohp     # PCL6-consuming printer
  (PostScript input) -> gstoraster    -> rastertohp     # PCL3-consuming printer
  (TIFF input)       -> imagetoraster -> rastertoescpx  # EPSON's ESC/P consuming printer
  (PNG input)        -> imagetoraster -> rastertopwg    # any IPP-Everywhere printer
  (JPEG input)       -> imagetoraster -> rastertopdf    # any PDF-enabled printer
  (PDF input)        -> pdftoraster   -> rastertoqpdf   # some Samsung printers consuming SPLIX

Usted debe hurgar en el directorio/usr/lib/cups/filter/en Linux (o/usr/libexec/cups/filter/en MacOS) para ver la lista de todos los filtros instalados en su sistema. Si usted tiene acceso a ambos, Linux y MacOS, se verán bastantes diferencias:

  • macOS: por ejemplo, en MacOS verá el cgpdftoraster filtro, que es propiedad de Apple y no liberado como código abierto y no está disponible en Linux. (Es una operación de interfaz con la base de la biblioteca gráfica de Apple, que no se usa en Linux de todos modos.) Esto convierte al formato de trama de CUPS.

    Luego están (al menos) dos filtros más que hacerse cargo de la trama CUPS producido y la convierten además: rastertopwg y rastertourf:

    • URF es un (propiedad de Apple) formato raster, que todos habilitado con AirPrint e impresoras con certificación debe soportar.
    • GTP es un formato de trama especificado por el Grupo de Trabajo de la impresora (GTP). Es muy similar a la URF, y cada En todas partes del IPP-impresora con certificación se requiere para apoyarlo.

    &

    Puede haber filtros adicionales rastertoXYZ en su sistema, si ha instalado el controlador de impresora de cualquier fabricante.

  • Linux: por ejemplo, en Linux (con OpenPrinting de cups-filters paquete instalado), verá la {pdf,image,gs}toraster que también convertir al formato de trama de CUPS.

    Los dos filtros rasterto{pdf,pwg} cUPS convertir a PDF y trama a trama GTP.

    Una vez más: puede ser filtros rastertoXYZ adicionales en el sistema, si ha instalado el controlador de impresora de propiedad de ningún proveedor, o si ha instalado paquetes adicionales del controlador de impresora como HPLIP, Gutenprint, del controlador de impresora-foo2zjs, del controlador de impresora-splix o impresora -Driver-brlaser (nombres de paquetes son para Debian).


Para ver los archivos de entrada específico tipo de formato MIME puede ser convertido por el cual el filtro al que específica el tipo MIME salida, se deberán tener en cuenta y leer todos los archivos /usr/share/cups/mime/*.convs de su sistema.


Un "impresora de trama" en la jerga de CUPS es cualquier impresora que no consumen PDF o PostScript. (Estrictamente hablando, en el mercado también hay impresoras que pueden consumir formato de impresión XPS/OXPS de Microsoft que también se basa vectorial. Pero estos no son compatibles con CUPS, ni en MacOS ni en Linux. Los vendedores proporcionan controladores sólo para Windows).