Articulo de referencia

Posdata

{{cite journal |last1=Perry |first1=T.S. |title='PostScript' prints anything: a case history |journal=IEEE Spectrum |date=May 1988 |volume=25 |issue=5 |pages=42–46 |doi=10.1109/...

PostScript ( PS ) es un lenguaje de descripción de páginas y un lenguaje de programación de tipado dinámico basado en pila . Se utiliza principalmente en el ámbito de la publicación electrónica y la autoedición , pero, al ser un lenguaje de programación Turing completo , también puede emplearse para muchos otros fines. PostScript fue creado en Adobe Systems por John Warnock , Charles Geschke , Doug Brotz, Ed Taft y Bill Paxton entre 1982 y 1984. La versión más reciente, PostScript 3, se lanzó en 1997.

Historia

Los conceptos del lenguaje PostScript fueron sembrados en 1976 por John Gaffney en Evans & Sutherland , [ 2 ] [ 3 ] [ 4 ] una empresa de gráficos por computadora . En ese momento, Gaffney y John Warnock estaban desarrollando un intérprete para una gran base de datos de gráficos tridimensionales del puerto de Nueva York .

Paralelamente, los investigadores de Xerox PARC habían desarrollado la primera impresora láser y habían reconocido la necesidad de un método estándar para definir las imágenes de las páginas. Entre 1975 y 1976, Bob Sproull y William Newman desarrollaron el formato Press, que posteriormente se utilizó en el sistema Xerox Star para controlar las impresoras láser. Sin embargo, Press, al ser un formato de datos y no un lenguaje, carecía de flexibilidad, por lo que PARC impulsó el proyecto Interpress para crear un sucesor.

En 1978, John Gaffney y Martin Newell, que entonces trabajaban en Xerox PARC, escribieron J & M o JaM [ 2 ] [ 5 ] (por "John and Martin"), que se utilizó para el diseño VLSI y la investigación de la impresión tipográfica y gráfica. Este trabajo evolucionó y se expandió posteriormente hasta convertirse en el lenguaje Interpress.  

Warnock se marchó con Chuck Geschke y fundaron Adobe Systems en diciembre de 1982. Junto con Doug Brotz, Ed Taft y Bill Paxton, crearon un lenguaje más sencillo, similar a Interpress, llamado PostScript, que salió al mercado en 1984.

Mientras tanto, en la primavera de 1983, Steve Jobs visitó Adobe y quedó deslumbrado por el potencial de PostScript, especialmente para la nueva computadora Macintosh que estaba desarrollando en Apple . [ 6 ] Para frustración de John Sculley , Jobs obtuvo la licencia de la tecnología PostScript de Adobe ofreciendo un anticipo de 1,5 millones de dólares sobre las regalías de PostScript, más 2,5 millones de dólares a cambio del 20 por ciento de las acciones de Adobe. [ 7 ] Durante una serie de reuniones en 1983, Jobs también ofreció repetidamente que Apple comprara Adobe por completo, pero los fundadores lo rechazaron una y otra vez. [ 7 ] En diciembre de 1983, las dos compañías finalmente firmaron el acuerdo de licencia de PostScript, y Adobe tuvo que cambiar inmediatamente su enfoque de los dispositivos de impresión de alta gama y alta resolución a la impresora láser Apple LaserWriter orientada al consumidor . [ 8 ]

En ese momento, el motor de impresión láser Canon de 300 ppp que se usaría en las LaserWriters se consideraba lo suficientemente bueno solo para la impresión de pruebas (es decir, para borradores preliminares de material cuyos borradores finales se enviarían a dispositivos profesionales de alta resolución), pero Jobs le presentó a Adobe el desafío de hacer que PostScript generara una salida de alta calidad en un dispositivo de tan baja resolución (que para la mayoría de los consumidores sería su único dispositivo de impresión). [ 9 ] En respuesta, Warnock y Brotz resolvieron el llamado "problema de apariencia" de hacer que el ancho del trazo de las letras se escalara correctamente para que se vieran bien en todas las resoluciones. [ 10 ] Su avance fue tan importante que Adobe nunca patentó la tecnología, para mantener sus detalles ocultos como secreto comercial . [ 10 ] Muchos años después, Warnock reveló el secreto comercial en una conferencia de 2010, y en 2022, Adobe publicó públicamente una versión temprana del código fuente original de PostScript de febrero de 1984. [ 11 ] Paxton trabajó en varias otras mejoras relacionadas, como el hinting de fuentes . [ 10 ] Este trabajo se realizó después de febrero de 1984, lo que significa que las mejoras de Paxton no se incluyeron en la publicación del código fuente y aún están protegidas como secretos comerciales. [ 11 ] Adobe también fue responsable de portar PostScript al chip Motorola 68000 de Canon . [ 10 ]

Apple y Adobe anunciaron la LaserWriter en la junta anual de accionistas de Apple el 23 de enero de 1985. [ 12 ] Fue la primera impresora en comercializarse con PostScript, lo que impulsó la revolución de la autoedición (DTP) a mediados de la década de 1980. [ 13 ] La regalía original de PostScript era del cinco por ciento del precio de lista de cada impresora láser vendida, lo que equivalía a 350 dólares del precio de lista original de la LaserWriter de 6995 dólares, y dichas regalías proporcionaron casi todos los ingresos de Adobe durante sus primeros años. [ 14 ] (Apple renegoció posteriormente el contrato para pagar una tarifa de licencia basada en el volumen de impresoras vendidas). [ 14 ] La combinación de méritos técnicos y amplia disponibilidad convirtió a PostScript en el lenguaje preferido para la salida gráfica en aplicaciones de impresión. Un intérprete (a veces denominado RIP , por Procesador de Imágenes Rasterizadas) para el lenguaje PostScript era un componente común de las impresoras láser durante las décadas de 1980 y 1990.

Sin embargo, el costo de implementación era alto; las computadoras generaban código PS sin procesar que la impresora interpretaba en una imagen rasterizada a la resolución natural de la impresora. Esto requería microprocesadores de alto rendimiento y amplia memoria . La LaserWriter utilizaba un Motorola 68000  de 12 MHz , lo que la hacía más rápida que cualquiera de las computadoras Macintosh a las que estaba conectada. [ 15 ] Para 1987, el costo de licenciar PS y fuentes de Adobe era de entre 400 y 900 dólares por impresora. [ 16 ] Cuando los motores de las impresoras láser costaban más de mil dólares, el costo adicional de PS era marginal. Pero, a medida que los mecanismos de impresión bajaban de precio, el costo de implementar PS se convirtió en una fracción demasiado grande del costo total de la impresora. Además, con las computadoras de escritorio volviéndose más potentes durante la década de 1990 que sus impresoras conectadas, ya no tenía sentido descargar el trabajo de rasterización a la impresora, que tenía recursos limitados. Para 2001, pocos modelos de impresoras de gama baja incluían soporte integrado para PostScript, debido principalmente a la creciente competencia de impresoras de inyección de tinta mucho más económicas que no lo admitían, y a los nuevos métodos basados ​​en software para renderizar imágenes PostScript en ordenadores, lo que las hacía compatibles con cualquier impresora. PDF , descendiente de PostScript, ofrece uno de estos métodos y ha sustituido en gran medida a PostScript como estándar de facto para la distribución de documentos electrónicos.

En las impresoras de gama alta, los procesadores PostScript siguen siendo habituales, y su uso puede reducir drásticamente el trabajo de la CPU necesario para imprimir documentos, transfiriendo el trabajo de renderizado de imágenes PostScript del ordenador a la impresora.

PostScript Nivel 1

La primera versión del lenguaje PostScript se lanzó al mercado en 1984. El calificador Nivel 1 se añadió cuando se introdujo el Nivel 2. [ 17 ]

PostScript Nivel 2

PostScript Nivel 2 se introdujo en 1991 e incluyó varias mejoras: mayor velocidad y fiabilidad, compatibilidad con separaciones de procesamiento de imágenes en ráster (RIP), descompresión de imágenes (por ejemplo, las imágenes JPEG podían ser renderizadas por un programa PostScript), compatibilidad con fuentes compuestas y el mecanismo de formularios para almacenar en caché contenido reutilizable. [ 17 ]

PostScript 3

PostScript 3 (Adobe abandonó la terminología de "nivel" en favor de un sistema de versiones más sencillo) llegó a finales de 1997 y, junto con muchas versiones nuevas basadas en diccionarios de operadores antiguos, introdujo un mejor manejo del color y nuevos filtros (que permiten la compresión/descompresión dentro del programa, la división del programa en fragmentos y el manejo avanzado de errores).

PostScript 3 fue significativo en términos de reemplazar los sistemas de preimpresión electrónica en color propietarios existentes, que entonces se usaban ampliamente para la producción de revistas, mediante la introducción de operaciones de sombreado suave con hasta 4096 tonos de gris (en lugar de los 256 disponibles en PostScript Nivel 2), así como DeviceN, un espacio de color que permitía agregar colores de tinta adicionales (llamados colores directos ) a páginas de color compuestas. [ 17 ] [ 18 ]

Uso en impresión

Antes de PostScript

Antes de la introducción de Interpress y PostScript, las impresoras estaban diseñadas para imprimir caracteres a partir del texto —generalmente en ASCII— que se les proporcionaba. Existían diversas tecnologías para esta tarea, pero la mayoría compartía la característica de que los glifos eran físicamente difíciles de modificar, ya que estaban grabados en teclas de máquinas de escribir , bandas de metal o placas ópticas.

Esto cambió en cierta medida con la creciente popularidad de las impresoras matriciales . Los caracteres en estos sistemas se dibujaban como una serie de puntos, según lo definido por una tabla de fuentes dentro de la impresora. A medida que se volvieron más sofisticadas, las impresoras matriciales comenzaron a incluir varias fuentes integradas entre las que el usuario podía elegir, y algunos modelos permitían a los usuarios cargar sus propios glifos personalizados en la impresora.

Las impresoras matriciales también introdujeron la capacidad de imprimir gráficos rasterizados . [ 19 ] Los gráficos eran interpretados por la computadora y enviados como una serie de puntos a la impresora usando una serie de secuencias de escape . Estos lenguajes de control de impresora variaban de una impresora a otra, lo que requería que los autores de programas crearan numerosos controladores .

La impresión de gráficos vectoriales se realizaba con dispositivos especializados llamados plotters . Casi todos los plotters compartían un lenguaje de comandos común, HPGL , pero su utilidad era limitada para cualquier otra cosa que no fuera imprimir gráficos. Además, solían ser caros y lentos, por lo que eran poco comunes.

Impresión PostScript

Las impresoras láser combinan las mejores características de las impresoras y los plotters. Al igual que estos últimos, ofrecen gráficos lineales de alta calidad, y como las impresoras matriciales, pueden generar páginas con texto y gráficos rasterizados. A diferencia de las impresoras y los plotters, una impresora láser permite posicionar gráficos y texto de alta calidad en la misma página. PostScript hizo posible aprovechar al máximo estas características al ofrecer un lenguaje de control único compatible con cualquier marca de impresora.

PostScript fue más allá del lenguaje de control de impresoras convencional y se convirtió en un lenguaje de programación completo. Muchas aplicaciones pueden transformar un documento en un programa PostScript, cuya ejecución genera el documento original. Este programa puede enviarse a un intérprete en la impresora, lo que da como resultado un documento impreso, o a uno dentro de otra aplicación, que mostrará el documento en pantalla. Dado que el programa-documento es el mismo independientemente de su destino, se denomina independiente del dispositivo .

PostScript destaca por implementar la rasterización en tiempo real, donde todo, incluso el texto, se especifica mediante líneas rectas y curvas de Bézier cúbicas (una tecnología que antes solo se encontraba en aplicaciones CAD ). Esto permite realizar escalados, rotaciones y otras transformaciones arbitrarias. Al interpretar el programa PostScript, el intérprete convierte estas instrucciones en los puntos necesarios para generar la salida. Por este motivo, a los intérpretes de PostScript se les suele llamar procesadores de imágenes ráster PostScript o RIP.

Manejo de fuentes

El manejo de las fuentes es casi tan complejo como el propio PostScript . El sistema de fuentes utiliza las primitivas gráficas de PS para dibujar glifos como curvas, que luego pueden renderizarse a cualquier resolución . Este enfoque planteaba varios problemas tipográficos .

Un problema es que las fuentes no se escalan linealmente en tamaños pequeños, y las características de los glifos se vuelven desproporcionadamente grandes o pequeñas, resultando poco atractivas. PostScript evitó este problema con la inclusión del perfilado de fuentes , que proporciona información adicional en bandas horizontales o verticales para ayudar a identificar las características de cada letra que el rasterizador debe conservar. El resultado fueron fuentes con una apariencia mucho mejor, incluso a baja resolución. Anteriormente se creía que para esta tarea se requerían fuentes de mapa de bits ajustadas manualmente.

En aquel entonces, la tecnología para incluir estas sugerencias en las fuentes se mantenía en secreto, y las fuentes con sugerencias se comprimían y cifraban en lo que Adobe denominaba una fuente Tipo 1 (también conocida como fuente PostScript Tipo 1 , PS1 , T1 o Adobe Tipo 1 ). Tipo 1 era, en esencia, una simplificación del sistema PS para almacenar únicamente información de contorno, en lugar de ser un lenguaje completo (PDF es similar en este aspecto). Adobe vendía licencias de la tecnología Tipo 1 a quienes deseaban añadir sugerencias a sus propias fuentes. Quienes no adquirían la licencia se quedaban con la fuente Tipo 3 (también conocida como fuente PostScript Tipo 3 , PS3 o T3 ). Las fuentes Tipo 3 permitían toda la sofisticación del lenguaje PostScript, pero sin el enfoque estandarizado para las sugerencias.

El formato de fuente Tipo 2 se diseñó para usarse con cadenas de caracteres del formato de fuente compacta (CFF) y se implementó para reducir el tamaño total del archivo de fuente. Posteriormente, el formato CFF/Tipo 2 se convirtió en la base para el manejo de contornos PostScript en fuentes OpenType .

El formato de fuente con clave CID también se diseñó para solucionar los problemas de las fuentes OCF/Tipo 0, abordando la compleja codificación de idiomas asiáticos ( CJK ) y los problemas con conjuntos de caracteres muy extensos. El formato de fuente con clave CID se puede usar con el formato de fuente Tipo 1 para fuentes estándar con clave CID, o con el Tipo 2 para fuentes OpenType con clave CID.

Para competir con el sistema de Adobe, Apple diseñó su propio sistema, TrueType , alrededor de 1991. Inmediatamente después del anuncio de TrueType, Adobe publicó la especificación para el formato de fuente Type 1. Herramientas comerciales como Altsys Fontographer (adquirida por Macromedia en enero de 1995 y propiedad de FontLab desde mayo de 2005) añadieron la capacidad de crear fuentes Type 1. Desde entonces, se han lanzado muchas fuentes Type 1 gratuitas; por ejemplo, las fuentes utilizadas con el sistema de composición tipográfica TeX están disponibles en este formato.

A principios de la década de 1990, existían otros sistemas para almacenar fuentes basadas en contornos, desarrollados por Bitstream y Metafont , por ejemplo, pero ninguno incluía una solución de impresión de uso general y, por lo tanto, no se utilizaban ampliamente.

A finales de la década de 1990, Adobe se unió a Microsoft para desarrollar OpenType , que esencialmente es un superconjunto funcional de los formatos Type 1 y TrueType. Al imprimir en un dispositivo de salida PostScript, se omiten las partes innecesarias de la fuente OpenType, y lo que el controlador envía al dispositivo es lo mismo que enviaría para una fuente TrueType o Type 1, dependiendo del tipo de contornos que tuviera la fuente OpenType.

Adobe ofreció soporte para las fuentes Type 1 en sus productos hasta enero de 2023, cuando eliminó por completo el soporte en favor de las fuentes OpenType. [ 20 ]

Otras implementaciones

Tanto las impresoras de ordenador como las máquinas de composición tipográfica de alta gama, como Linotronic, implementaron PostScript. [ 21 ] En la década de 1980, Adobe obtuvo la mayor parte de sus ingresos de las tarifas de licencia para implementaciones, conocidas como procesadores de imágenes ráster o RIP . A medida que surgieron varias plataformas nuevas basadas en RISC a mediados de la década de 1980, algunos consideraron que el soporte de Adobe para las nuevas máquinas era insuficiente.

Esto, sumado a los problemas de costo, propició que las implementaciones de PostScript por parte de terceros se volvieran comunes, especialmente en impresoras de bajo costo (donde el precio de la licencia era el principal obstáculo) o en equipos de composición tipográfica de alta gama (donde la búsqueda de velocidad exigía compatibilidad con nuevas plataformas más rápida de lo que Adobe podía ofrecer). En un momento dado, Microsoft cedió a Apple la licencia de un intérprete compatible con PostScript que había adquirido, llamado TrueImage , y Apple, a su vez, cedió a Microsoft la licencia de su nuevo formato de fuente, TrueType . Finalmente, Apple llegó a un acuerdo con Adobe y cedió la licencia de PostScript original para sus impresoras, pero TrueType se convirtió en la tecnología estándar de fuentes de contorno tanto para Windows como para Macintosh.

Actualmente, los intérpretes de terceros compatibles con PostScript se utilizan ampliamente en impresoras y periféricos multifunción (MFP). Por ejemplo, el intérprete IPS PS3 [ 22 ] de CSR plc , anteriormente conocido como PhoenixPage, es estándar en muchas impresoras y MFP, incluidas las desarrolladas por Hewlett-Packard y vendidas bajo las líneas LaserJet y Color LaserJet. Otras soluciones PostScript de terceros utilizadas por fabricantes de impresoras y MFP incluyen Jaws [ 23 ] y el RIP Harlequin, ambos de Global Graphics . Una versión de software libre , con varias otras aplicaciones, es Ghostscript . Varios intérpretes compatibles se enumeran en la Wiki de Impresión No Documentada. [ 24 ]

Algunas impresoras láser básicas y económicas no son compatibles con PostScript, sino que incluyen controladores que simplemente rasterizan los formatos gráficos nativos de la plataforma en lugar de convertirlos primero a PostScript. Si se requiere compatibilidad con PostScript para este tipo de impresoras, se puede usar Ghostscript. También existen varios intérpretes comerciales de PostScript, como T-Script de TeleType Co. o BR-Script3 de Brother .

Utilizar como sistema de visualización

PostScript alcanzó el éxito comercial gracias a la introducción de la interfaz gráfica de usuario (GUI), que permitía a los diseñadores maquetar directamente las páginas para su posterior impresión en impresoras láser. Sin embargo, los sistemas gráficos de las GUI solían ser mucho menos sofisticados que PostScript; por ejemplo, QuickDraw de Apple solo admitía líneas y arcos básicos, no las complejas curvas B-spline ni las avanzadas opciones de relleno de regiones de PostScript. Para aprovechar al máximo la impresión PostScript, las aplicaciones informáticas debían reimplementar estas funciones utilizando el sistema gráfico de la plataforma. Esto generaba numerosos problemas, ya que la maquetación en pantalla no coincidía exactamente con la impresión, debido a las diferencias en la implementación de estas funciones.

Con el aumento de la potencia informática, fue posible alojar el sistema PostScript en el ordenador en lugar de en la impresora. Esto propició la evolución natural de PostScript, que pasó de ser un sistema de impresión a uno que también podía utilizarse como lenguaje gráfico propio del ordenador. Este enfoque ofrecía numerosas ventajas: no solo eliminaba la posibilidad de que la salida en pantalla y en la impresora fueran diferentes, sino que también proporcionaba un potente sistema gráfico al ordenador y permitía que las impresoras fueran "tontas" en un momento en que el coste de los motores láser estaba disminuyendo. En un entorno de producción, utilizar PostScript como sistema de visualización significaba que el ordenador podía renderizar baja resolución en pantalla, mayor resolución en la impresora o simplemente enviar el código PostScript a una impresora inteligente para su impresión externa.

Sin embargo, PostScript se diseñó pensando en la impresión y presentaba numerosas características que lo hacían inadecuado para su uso directo en un sistema de visualización interactiva. En particular, PostScript se basaba en la idea de acumular comandos hasta que showpagese detectaba el comando deseado, momento en el que todos los comandos leídos hasta entonces se interpretaban y se mostraban. En un sistema interactivo, esto resultaba claramente inapropiado, y PostScript tampoco incorporaba ningún tipo de interactividad; por ejemplo, la detección de pulsaciones para la interacción con el ratón obviamente no era aplicable cuando PostScript se utilizaba en una impresora.

Cuando Steve Jobs dejó Apple y fundó NeXT , le propuso a Adobe la idea de usar PostScript como sistema de visualización para sus nuevas estaciones de trabajo. El resultado fue Display PostScript , o DPS. DPS añadió funcionalidades básicas para mejorar el rendimiento, transformando muchas búsquedas de cadenas en enteros de 32 bits, añadiendo soporte para la salida directa con cada comando y funciones que permitían a la interfaz gráfica inspeccionar el diagrama. Además, se proporcionó un conjunto de "enlaces" para permitir la llamada directa de código PostScript desde el lenguaje de programación C. NeXT utilizó estos enlaces en su sistema NeXTStep para proporcionar un sistema gráfico orientado a objetos . Aunque DPS se desarrolló en conjunto con NeXT, Adobe lo comercializó y se convirtió en una característica común de la mayoría de las estaciones de trabajo Unix en la década de 1990.

Sun Microsystems adoptó un enfoque diferente, creando NeWS . En lugar del concepto de DPS de permitir que PS interactuara con programas en C, NeWS extendió PS a un lenguaje adecuado para ejecutar la interfaz gráfica de usuario (GUI) completa de una computadora. Sun agregó una serie de nuevos comandos para temporizadores, control del ratón, interrupciones y otros sistemas necesarios para la interactividad, e incorporó estructuras de datos y elementos de lenguaje para que fuera completamente orientado a objetos internamente. Se escribieron tres interfaces gráficas de usuario completas en NeWS, las cuales se proporcionaron durante un tiempo en sus estaciones de trabajo. Sin embargo, los esfuerzos continuos por estandarizar el sistema X11 llevaron a su introducción y uso generalizado en los sistemas Sun, y NeWS nunca llegó a ser de uso común.

Formato de documento portátil

PDF y PostScript comparten el mismo modelo de imagen, y ambos formatos son, en su mayoría, mutuamente convertibles. Sin embargo, PostScript, el formato anterior, carece de transparencia: su modelo de objetos nativo pinta de forma completamente opaca. Excepto por esto, ambos formatos producen el mismo resultado al imprimirse. Pero PDF carece del marco de lenguaje de programación de propósito general del lenguaje PostScript. Un documento PDF es una estructura de datos estática diseñada para un acceso eficiente e incorpora información de navegación adecuada para la visualización interactiva. [ 25 ] : 9

El idioma

PostScript es un lenguaje de programación Turing-completo , perteneciente al grupo de lenguajes de programación concatenativo . Es un lenguaje interpretado , basado en pila , similar a Forth , con tipado dinámico , estructuras de datos inspiradas en las de Lisp , memoria con ámbito y, desde el nivel 2 del lenguaje, recolección de basura . La sintaxis del lenguaje utiliza la notación polaca inversa , lo que hace que el orden de las operaciones sea inequívoco, pero leer un programa requiere cierta práctica, ya que hay que tener en cuenta la disposición de la pila . La mayoría de los operadores (lo que otros lenguajes denominan funciones ) toman sus argumentos de la pila y colocan sus resultados en ella. Los literales (por ejemplo, los números) tienen el efecto de colocar una copia de sí mismos en la pila. Se pueden construir estructuras de datos sofisticadas sobre los tipos array y diccionario , pero no se pueden declarar al sistema de tipos, que los ve todos solo como arrays y diccionarios, por lo que cualquier disciplina de tipado adicional que se aplique a estos "tipos" definidos por el usuario queda a cargo del código que los implementa.

El carácter "%" se utiliza para introducir comentarios en programas PostScript. Por convención, todo programa PostScript debe comenzar con los caracteres "%!PS" como directiva del intérprete para que todos los dispositivos lo interpreten correctamente como PostScript.

Los programas PostScript se dividen típicamente en dos partes, denominadas convencionalmente prólogo y script . El prólogo contiene procedimientos y lo escribe un programador. El script pasa datos a dichos procedimientos. El script suele generarse automáticamente, utilizando un lenguaje de programación distinto de PostScript. [ 26 ]

"Hola Mundo"

Un programa "Hola Mundo" , la forma habitual de mostrar un pequeño ejemplo de un programa completo en un lenguaje determinado, podría verse así en PostScript (nivel 2):

%!PS /Courier % nombre la fuente deseada 20 selectfont % elija el tamaño en puntos y establezca % la fuente como la actual 72 500 moveto % posicione el punto actual en % las coordenadas 72, 500 (el origen está en la % esquina inferior izquierda de la página) (¡Hola mundo!) show % pinte el texto entre paréntesis showpage % imprima todo en la página

o si el dispositivo de salida tiene una consola

%!PS (¡Hola mundo!) =

Unidades de longitud

PostScript utiliza el punto como unidad de longitud. Sin embargo, a diferencia de otras versiones del punto, PostScript utiliza exactamente 72 puntos por pulgada. Por lo tanto:

1 punto = 1 / 72 pulgadas = 25,4 / 72 mm = 127 / 360 mm = 352,777 micrómetros

Por ejemplo, para dibujar una línea vertical de 4  cm de longitud, basta con escribir:

0 0 moveto 0 113.385827 rlineto stroke

De forma más legible e idiomática, se podría utilizar el siguiente equivalente, que demuestra una definición de procedimiento simple y el uso de los operadores matemáticos muly div:

/cm { 72 mul 2.54 div } def % 1 pulgada = 2.54 cm exactamente 0 0 moveto 0 4 cm rlineto stroke

(Técnicamente, la mayoría de las impresoras tienen un margen implícito de no impresión alrededor de los bordes físicos de la hoja, y las coordenadas 0 0 están calibradas a su esquina, [ 25 ] : sección 4.3.1 por lo que es posible que tenga que usar un punto de partida diferente para ver algo).

La mayoría de las implementaciones de PostScript usan números reales de precisión simple [ 25 ] : apéndice B (mantisa de 24 bits), por lo que no tiene sentido usar más de 9 dígitos decimales para especificar un número real, y realizar cálculos puede producir errores de redondeo inaceptables.

Software

Software que se puede utilizar para renderizar documentos PostScript:

Véase también

Referencias

  1. Perry, TS (mayo de 1988).'PostScript' imprime cualquier cosa: un estudio de caso". IEEE Spectrum . 25 (5): 42– 46. doi : 10.1109/6.4550 . S2CID 33376390 . 
  2. 1 2 Reilly, Edwin (2003). Hitos en Ciencias de la Computación y Tecnologías de la Información . Greenwood Publishing Group. pág. 206. ISBN  9781573565219.
  3. Peterson, JK (28 de junio de 2018). Diccionario ilustrado de fibra óptica . Taylor & Francis Group. ISBN 9781138455757.
  4. Nguyen, Binh (2004). Diccionario Linux (ed. 0.16 ). Binh Nguyen. Archivado del original el 24 de febrero de 2021. Recuperado el 28 de septiembre de 2019 . 
  5. Biancuzzi, Federico; Warden, Shane (2009). «Capítulo 16. PostScript». Masterminds of Programming . O'Reilly Media, Inc. ISBN 9780596515171.
  6. Pfiffner, Pamela (2003). Inside the Publishing Revolution: The Adobe Story . Berkeley: Peachpit Press. p. 33. ISBN  0-321-11564-3.
  7. 1 2 Pfiffner, Pamela (2003). Inside the Publishing Revolution: The Adobe Story . Berkeley: Peachpit Press. p. 34. ISBN  0-321-11564-3.
  8. Pfiffner, Pamela (2003). Inside the Publishing Revolution: The Adobe Story . Berkeley: Peachpit Press. p. 35. ISBN  0-321-11564-3.
  9. Pfiffner, Pamela (2003). Inside the Publishing Revolution: The Adobe Story . Berkeley: Peachpit Press. p. 36. ISBN  0-321-11564-3.
  10. 1 2 3 4 Pfiffner, Pamela (2003). Inside the Publishing Revolution: The Adobe Story . Berkeley: Peachpit Press. pág. 37. ISBN  0-321-11564-3.
  11. 1 2 Brock, David (1 de diciembre de 2022). "PostScript: Una imprenta digital" . Blog del CHM . Museo de Historia de la Computación.
  12. Pfiffner, Pamela (2003). Inside the Publishing Revolution: The Adobe Story . Berkeley: Peachpit Press. p. 47. ISBN  0-321-11564-3.
  13. Pfiffner, Pamela (2003). Inside the Publishing Revolution: The Adobe Story . Berkeley: Peachpit Press. p. 48. ISBN  0-321-11564-3.
  14. 1 2 Pfiffner, Pamela (2003). Inside the Publishing Revolution: The Adobe Story . Berkeley: Peachpit Press. pág. 69. ISBN  0-321-11564-3.
  15. Pfiffner, Pamela (2003). Inside the Publishing Revolution: The Adobe Story . Berkeley: Peachpit Press. p. 53. ISBN  0-321-11564-3.
  16. Pournelle, Jerry (diciembre de 1987). "El viejo juego de las conchas" . BYTE . Vol. 12, n.º 14, págs. 199-212 . Consultado el 28 de abril de 2026 .   
  17. 1 2 3 "Diferencias entre los niveles 1, 2 y 3 de Adobe PostScript" . ThoughtCo . Recuperado el 4 de marzo de 2025 .
  18. "Información general de PostScript 3" . Adobe . 4 de junio de 2002. Archivado del original el 24 de junio de 2003. Consultado el 27 de abril de 2026 .
  19. "Gráficos de matriz de puntos" . www.ibm.com . Consultado el 4 de marzo de 2025 .
  20. "Fin del soporte para fuentes PostScript Tipo 1" . Adobe . Consultado el 2 de marzo de 2024 .
  21. Neudecker, Tom (16 de septiembre de 1985). "Page Maker se entrega por completo a la publicación" . InfoWorld . Vol. 7, n.º 37, págs. 41-42 . Consultado el 12 de septiembre de 2025 .   
  22. IPS PS3 , CSR, archivado del original el 07/06/2012 , recuperado el 27/04/2026
  23. Tiburón , gráficos globales, archivados del original el 8 de febrero de 2013 , consultados el 27 de abril de 2026.
  24. "Idiomas de descripción de página: Postscript", Formatos , Impresión no documentada, archivado del original (wiki) el 05/11/2017 , recuperado el 15/12/2009
  25. 1 2 3 Adobe Systems Incorporated (1999). Referencia del lenguaje PostScript (PDF) (3.ª ed.). Reading, Mass.: Addison-Wesley. ISBN  0-201-37922-8. OCLC 40543937 . Archivado (PDF) del original el 24-10-2022 . Recuperado el 14-08-2022 . 
  26. Adobe Systems Inc. PostScript Language Reference Manual, 2.ª ed., Apéndice G, Document Structuring Conventions-Version 3.0 . Addison Wesley, 1990, pág. 611.

Lecturas adicionales

  • Adobe Systems Incorporated (febrero de 1999) [1985]. Manual de referencia del lenguaje PostScript (PDF) (1.ª impresión, 3.ª  ed.). Addison-Wesley Publishing Company . ISBN 0-201-37922-8. Consultado el 14 de julio de 2023 .(NB. Este libro ( PLR3 ) junto con el Suplemento (PDF) , archivado del original (PDF) el 05-03-2016 , recuperado el 29-04-2006)(Es la obra de referencia de facto sobre PostScript 3 y se la conoce informalmente como el "libro rojo" debido a su portada roja).
  • Adobe Systems Incorporated (1990) [1985]. Manual de referencia del lenguaje PostScript (2.ª  ed.). Addison-Wesley Publishing Company .(Nota: Esta edición ( PLR2 ) abarca PostScript Nivel 2 y también contiene una descripción de Display PostScript, que ya no se trata en la tercera edición).
  • Adobe Systems Incorporated (1985). Manual de referencia del lenguaje PostScript (1.ª  ed.). Addison-Wesley Publishing Company .(Nota: Esta edición ( PLR1 ) abarca el nivel 1 de PostScript).
  • Geschke, Charles (1986) [1985]. Prefacio. Tutorial y libro de recetas del lenguaje PostScript . Por Adobe Systems Incorporated (27.ª reimpresión, agosto de 1998, 1.ª  ed.). Addison Wesley Publishing Company . ISBN 0-201-10179-3. 9-780201-101799 . Consultado el 27-02-2017 .(Nota: Este texto introductorio se conoce informalmente como "libro azul" debido a su cubierta azul).
  • Diseño de programas en lenguaje PostScript . Adobe Systems . Archivado del original (Zip) el 13 de junio de 2011.(Nota: Este libro se conoce informalmente como "libro verde" debido a su cubierta verde).
  • Formato de fuente Tipo 1 (PDF) , Adobe, archivado desde el original (PDF) el 21/03/2015(Nota: Este libro se conoce informalmente como "libro negro" debido a su cubierta negra).
  • PostScript vs. PDF , Adobe, archivado del original el 13 de abril de 2016.(Nota: Comparación introductoria oficial de PS, EPS y PDF.)
  • Una primera guía de PostScript , recursivo de cola
  • Casselman, William 'Bill'. Ilustraciones matemáticas: un manual de geometría y PostScript (PDF) .
  • Reid, Glenn (1990). Pensando en PostScript (PDF) . Colorado, EE. UU.: Addison-Wesley .(Nota: El autor ofrece un tutorial completo en línea).
  • Museo de Historia de la Computación: artículo sobre el desarrollo inicial de PostScript.