Buscar..


Observaciones

PostScript es un lenguaje de scripting basado en el dinamismo, de tipos dinámicos, basado en apilamiento inverso, con primitivas incorporadas para generar imágenes renderizadas a partir de descripciones de vectores. PostScript emplea el mismo "Modelo de imagen de Adobe" que el formato de archivo PDF.

PostScript se utiliza como formato de salida en muchos programas, ya que está diseñado para ser generado fácilmente por una máquina.

Al igual que LISP, PostScript es homoicónico y el código y los datos comparten la misma representación. Los procedimientos pueden tomar los procedimientos como datos y los procedimientos de rendimientos como resultados, prestándose también a técnicas de programación concatenativa .

Instalación o configuración

Los auténticos intérpretes de Adobe PostScript están disponibles en impresoras de alta gama, el producto Display PostScript (DPS) y el producto Acrobat Distiller. Como autores del estándar, estos productos se consideran "la implementación estándar" con el fin de describir las diferencias entre las implementaciones de PostScript.

La interfaz estándar para el intérprete definido en el PLRM es el flujo de programa que puede ser de texto o binario, dependiendo de los detalles del canal subyacente o sistema operativo / controlador. Acrobat Distiller tiene una interfaz gráfica de usuario para seleccionar el programa PostScript de entrada y representar su salida en formato PDF. Distiller también tiene un soporte limitado para usar el flujo de texto de salida para informar errores y otros resultados del programa. GSView proporciona una interfaz gráfica de usuario similar para un flujo de trabajo similar utilizando Ghostscript como intérprete.

Ghostscript y Xpost funcionan en modo de línea de comandos. El archivo de programa postscript para ejecutar puede mencionarse en la línea de comandos ( gs program.ps o xpost program.ps ) que abrirá una ventana gráfica para mostrar la salida gráfica. Las opciones se pueden usar para renderizar los gráficos en otro lugar como un archivo de disco o suprimir los gráficos por completo y usar postscript como un lenguaje de scripting de texto.

Los distintos intérpretes tienen sus propias instrucciones de instalación y configuración y sería inútil (y propenso a no estar actualizado) reproducirlos aquí.

Intérpretes de PostScript de libre disponibilidad.

  • Ghostscript está disponible para todas las plataformas principales y distribuciones de Linux, en formato fuente o binario, bajo la licencia GNU o bajo otros acuerdos de licencia con los autores, el software Artifex . Ghostscript implementa el estándar completo de PostScript 3.

  • Xpost está disponible en formato fuente para todas las plataformas principales, bajo la licencia BSD-3-cláusula. Implementa el estándar de Nivel 1 con algunas extensiones de Nivel 2 y algunas extensiones DPS.

Descripción general de PostScript

PostScript es un lenguaje de programación general completo de Turing, diseñado y desarrollado por Adobe Systems. Muchas de las ideas que florecieron en PostScript se habían cultivado en proyectos para Xerox y Evans & Sutherland.

Su principal aplicación en el mundo real históricamente es como un lenguaje de descripción de página , o en su EPS de una sola página forma un lenguaje de descripción de imágenes de gráficos vectoriales. Es de tipo dinámico, dinámico y basado en pila, lo que conduce a una sintaxis principalmente polaca inversa.

Hay tres versiones principales de PostScript.

  1. PostScript Nivel 1 : se lanzó al mercado en 1984 como el sistema operativo residente de la impresora láser LaserWriter de Apple, que inauguró la era de la publicación digital.
  2. El nivel 2 de PostScript : lanzado en 1991, contenía varias mejoras importantes al nivel 1, incluido el soporte para descompresión de imágenes, separación en RIP, diccionarios de crecimiento automático, recolección de basura, recursos con nombre, codificaciones binarias de la secuencia del programa PostScript.
  3. PostScript 3 : la última versión, y quizás la más ampliamente adoptada, se lanzó en 1997. También contiene varias mejoras de importación sobre el Nivel 2, como Smooth Shading. El término "nivel" se ha caído.

Aunque PostScript se usa normalmente como un lenguaje de descripción de página y, por lo tanto, se implementa dentro de muchas impresoras para generar imágenes de mapa de bits, también se puede usar para otros fines. Como una calculadora de pulido inverso rápido con nombres de operador más memorables que bc . Como un formato de salida generado por otro programa (generalmente en algún otro idioma).

Aunque los archivos PostScript son típicamente ASCII de 7 bits limpios, existen varios tipos de codificación binaria descritos en el estándar de nivel 2. Y al ser programable, un programa puede implementar su propio esquema de codificación arbitrariamente complejo por sí mismo. Hay un Concurso Internacional de Postscript ofuscado, algo menos activo que el de C.

Referencias en linea

Preguntas frecuentes

Libros

  • Manual de referencia del lenguaje Postscript, 1ed, 1985. Recomendado por su pequeño tamaño y fácil índice de operadores de las páginas de resumen (falta en ediciones posteriores).

  • Posdata del mundo real. Capítulos de varios autores sobre diversos temas, incluida la excelente cobertura de medios tonos.

Espacios de nombres locales para funciones

Postscript es un lenguaje de espacios dinámicos o LISP 1 . Pero proporciona las herramientas para implementar variables locales en procedimientos y otros efectos necesarios para implementar algoritmos.

Para los nombres locales en un procedimiento, cree un nuevo diccionario al principio y ábralo al final.

/myproc {
    10 dict begin
    %... useful code ...
    end
 } def

También puede combinar esto bien con un atajo para definir los argumentos de la función como variables.

% a b c  myproc  result
/myproc {
    10 dict begin
    {/c /b /a} {exch def} forall
    %... useful code yielding result ...
    end
 } def

Si necesita actualizar una variable * "global" * mientras el diccionario local está en la parte superior, use store lugar de def .

Hola mundo ejemplo

Seleccione una fuente y tamaño de fuente, seleccione la ubicación, show cadena.

%!PS
/Palatino-Roman 20 selectfont
300 400 moveto
(Hello, World!) show
showpage

Notas y errores comunes:

  • No se puede establecer una fuente (lo que da como resultado que no haya texto o una fuente predeterminada (fea))

  • Usando findfont y setfont pero olvidando la scalefont en el medio. El uso de selectfont nivel 2 evita este problema y es más conciso.

  • No se puede establecer un punto con moveto , o establecer el punto fuera de la página. Para el papel de carta de Estados Unidos, 8.5x11 es 792x612 ps puntos. Así que es fácil recordar aproximadamente 800x600 (pero un poco más corto y más ancho). Entonces 300 400 es aproximadamente el centro de la página (poco alto, poco a la izquierda).

  • Olvidando llamar a showpage . Si showpage una vista previa de un programa ps con gs y no termina en showpage , gs puede mostrarle una imagen. Y, sin embargo, el archivo misteriosamente no producirá ningún resultado cuando intentes convertir a pdf o alguna otra cosa.

Plan de estudios

Lea la documentación en este orden para aprender fácilmente postscript:

  1. Excelente tutorial de Paul Bourke: http://paulbourke.net/dataformats/postscript/

  2. Libro azul, primera mitad, el tutorial oficial original:
    http://www-cdf.fnal.gov/offline/PostScript/BLUEBOOK.PDF

  3. Libro verde, cómo usar postscript efectivamente:
    http://www-cdf.fnal.gov/offline/PostScript/GREENBK.PDF

  4. Pensando en PostScript, 'nuff dijo: http://wwwcdf.pd.infn.it/localdoc/tips.pdf

  5. Ilustraciones matematicas . Comience pequeño, construya a lo grande. Las matemáticas detrás de las curvas Bezier. El algoritmo de recorte de polígonos Hodgman-Sutherland. Transformaciones afines y transformaciones no lineales de la ruta. Dibujo 3D y sombreado de Gouraud. Desde el prefacio:

Cuál [de las muchas herramientas para ayudar a producir gráficos matemáticos] para elegir aparentemente implica una compensación entre la simplicidad y la calidad, en la que la mayoría opina lo que perciben como simplicidad. La verdad es que la compensación es innecesaria: una vez que se ha realizado una pequeña inversión inicial de esfuerzo, lo mejor que se puede hacer en la mayoría de las situaciones es escribir un programa en el lenguaje de programación de gráficos PostScript. Prácticamente no hay límite para la calidad de la salida de un programa PostScript, y a medida que uno adquiere experiencia, las dificultades de usar el lenguaje disminuyen rápidamente. La aparente complejidad involucrada en la producción de figuras simples mediante la programación en PostScript, como espero que demuestre este libro, es en gran medida una ilusión. Y la cantidad de trabajo involucrado en la producción de figuras más complicadas será generalmente ni más ni menos de lo que es necesario.



Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow