Document Structuring Conventions ( DSC ) es un conjunto de estándares para PostScript , basado en el uso de comentarios , que especifica una forma de estructurar un archivo PostScript y una forma de exponer esa estructura de una manera legible por máquina. Un archivo PostScript que cumple con DSC se denomina documento conforme .
La necesidad de una convención de estructuración surge porque PostScript es un lenguaje de programación Turing-completo . Por lo tanto, no hay un método garantizado (salvo que se imprima realmente el documento) para hacer cosas como determinar cuántas páginas tiene un documento determinado o qué tan grande es una página determinada, o cómo saltar a una página en particular. La adición de la estructura, con comentarios DSC que exponen esa estructura, ayuda a proporcionar una manera para que, por ejemplo, un administrador de trabajos de impresión inteligente tenga la capacidad de reorganizar las páginas para imprimir, o para que un programa de diseño de páginas encuentre el cuadro delimitador de un archivo PostScript utilizado como una imagen gráfica. En conjunto, cualquier programa de este tipo que tome archivos PostScript como datos de entrada se denomina administrador de documentos .
Para que un archivo de impresión PostScript pueda convertirse correctamente a PDF mediante las herramientas de Adobe, debe cumplir con los estándares básicos de DSC.
Algunos comentarios DSC cumplen una segunda función, ya que especifican una forma de indicarle al administrador de documentos que haga ciertas cosas, como insertar una fuente u otro código PostScript (denominados colectivamente recursos ) en el archivo. Los comentarios DSC que cumplen esta segunda función son más similares a las directivas de preprocesamiento y no son puramente comentarios. Los documentos que utilizan ese tipo de comentarios DSC requieren un administrador de documentos que funcione para que se publiquen como se espera; enviarlos directamente a una impresora no funcionará.
DSC es la base de Encapsulated PostScript (EPS) : los archivos EPS son documentos que cumplen con los estándares DSC con restricciones adicionales.
El conjunto de comentarios de DSC se puede ampliar mediante un mecanismo llamado Convenciones de estructuración abierta, que, junto con la especificación EPS, forman la base de las primeras versiones del formato de archivo Artwork de Adobe Illustrator .
La premisa básica de DSC es la separación de prólogo (definiciones estáticas) y script ( código que afecta a la salida impresa específica del trabajo), además de la prohibición de ciertos operadores PostScript considerados inadecuados para las descripciones de páginas. Esto garantiza un nivel básico de previsibilidad en el código PostScript, formando así la base de la manejabilidad de los documentos.
Se proporciona una capa adicional opcional de capacidad de gestión de documentos al separar el script en una sección de configuración de documentos , cero o más páginas funcionalmente independientes y un tráiler opcional (código de limpieza). ("Cero páginas" en DSC generalmente significa "una página sin el uso del operador 'showpage' de PostScript"). La independencia funcional entre páginas, más la prohibición de más operadores PostScript en la sección de páginas, forman la base de la independencia de páginas , que permite reordenar las páginas y acceder a ellas de forma independiente y aleatoria.
Esta estructura impuesta se expone luego delimitando el archivo PostScript con comentarios DSC , que normalmente comienzan con dos signos de porcentaje seguidos de una palabra clave. Algunas palabras clave deben ir seguidas de dos puntos, un carácter de espacio opcional y, a continuación, una serie de argumentos .
Finalmente, el documento se marca como conforme iniciando con un comentario que empieza con “%!PS-Adobe-” seguido del número de versión de DSC.
Las secciones de código PostScript reutilizable se pueden modularizar en conjuntos de procedimientos (conjuntos de procedimientos, que corresponden a bibliotecas de funciones en otros lenguajes de programación) para facilitar la generación de código PostScript. Los conjuntos de procedimientos y otros recursos PostScript (por ejemplo, fuentes) se pueden omitir del propio archivo PostScript y se puede hacer referencia a ellos externamente mediante un comentario DSC similar a una directiva; sin embargo, dicha referencia externa solo puede funcionar con un administrador de documentos que comprenda dichos comentarios DSC.
La versión 3.0 de DSC se publicó el 25 de septiembre de 1992. La especificación establece que "aunque los comentarios de DSC son una capa de comunicación más allá del lenguaje PostScript y no afectan al resultado final, su uso se considera un buen estilo de programación en lenguaje PostScript". Por lo tanto, la mayoría de los programas que producen PostScript generan comentarios compatibles con DSC junto con el código, aunque algunos de estos programas en realidad no producen documentos compatibles.
Un documento conforme con DSC (este generado por dvips ) podría comenzar:
%!PS-Adobe-2.0 %%Creador: dvips(k) 5.95a Derechos de autor 2005 Radical Eye Software %%Título: texput.dvi %%Páginas: 1 %%PageOrder: Ascender %%Cuadro delimitador: 0 0 612 792 %%DocumentPaperSizes: Carta %%Fin de los comentarios
que tiene el siguiente significado: