xref: /plan9/sys/src/cmd/postscript/common/comments.h (revision 219b2ee8daee37f4aad58d63f21287faa8e4ffdc)
1*219b2ee8SDavid du Colombier /*
2*219b2ee8SDavid du Colombier  *
3*219b2ee8SDavid du Colombier  * Currently defined file structuring comments from Adobe - plus a few others.
4*219b2ee8SDavid du Colombier  * Ones that end with a colon expect arguments, while those ending with a newline
5*219b2ee8SDavid du Colombier  * stand on their own. Truly overkill on Adobe's part and mine for including them
6*219b2ee8SDavid du Colombier  * all!
7*219b2ee8SDavid du Colombier  *
8*219b2ee8SDavid du Colombier  * All PostScript files should begin with a header that starts with one of the
9*219b2ee8SDavid du Colombier  * following comments.
10*219b2ee8SDavid du Colombier  *
11*219b2ee8SDavid du Colombier  */
12*219b2ee8SDavid du Colombier 
13*219b2ee8SDavid du Colombier #define NONCONFORMING			"%!PS\n"
14*219b2ee8SDavid du Colombier #define MINCONFORMING			"%!PS-Adobe-\n"
15*219b2ee8SDavid du Colombier #define OLDCONFORMING			"%!PS-Adobe-1.0\n"
16*219b2ee8SDavid du Colombier 
17*219b2ee8SDavid du Colombier #define CONFORMING			"%!PS-Adobe-2.0\n"
18*219b2ee8SDavid du Colombier #define CONFORMINGEPS			"%!PS-Adobe-2.0 EPS\n"
19*219b2ee8SDavid du Colombier #define CONFORMINGQUERY			"%!PS-Adobe-2.0 Query\n"
20*219b2ee8SDavid du Colombier #define CONFORMINGEXITSERVER		"%!PS-Adobe-2.0 ExitServer\n"
21*219b2ee8SDavid du Colombier 
22*219b2ee8SDavid du Colombier /*
23*219b2ee8SDavid du Colombier  *
24*219b2ee8SDavid du Colombier  * Header comments - immediately follow the appropriate document classification
25*219b2ee8SDavid du Colombier  * comment.
26*219b2ee8SDavid du Colombier  *
27*219b2ee8SDavid du Colombier  */
28*219b2ee8SDavid du Colombier 
29*219b2ee8SDavid du Colombier #define TITLE				"%%Title:"
30*219b2ee8SDavid du Colombier #define CREATOR				"%%Creator:"
31*219b2ee8SDavid du Colombier #define CREATIONDATE			"%%CreationDate:"
32*219b2ee8SDavid du Colombier #define FOR				"%%For:"
33*219b2ee8SDavid du Colombier #define ROUTING				"%%Routing:"
34*219b2ee8SDavid du Colombier #define BOUNDINGBOX			"%%BoundingBox:"
35*219b2ee8SDavid du Colombier #define PAGES				"%%Pages:"
36*219b2ee8SDavid du Colombier #define REQUIREMENTS			"%%Requirements:"
37*219b2ee8SDavid du Colombier 
38*219b2ee8SDavid du Colombier #define DOCUMENTFONTS			"%%DocumentFonts:"
39*219b2ee8SDavid du Colombier #define DOCUMENTNEEDEDFONTS		"%%DocumentNeededFonts:"
40*219b2ee8SDavid du Colombier #define DOCUMENTSUPPLIEDFONTS		"%%DocumentSuppliedFonts:"
41*219b2ee8SDavid du Colombier #define DOCUMENTNEEDEDPROCSETS		"%%DocumentNeededProcSets:"
42*219b2ee8SDavid du Colombier #define DOCUMENTSUPPLIEDPROCSETS	"%%DocumentSuppliedProcSets:"
43*219b2ee8SDavid du Colombier #define DOCUMENTNEEDEDFILES		"%%DocumentNeededFiles:"
44*219b2ee8SDavid du Colombier #define DOCUMENTSUPPLIEDFILES		"%%DocumentSuppliedFiles:"
45*219b2ee8SDavid du Colombier #define DOCUMENTPAPERSIZES		"%%DocumentPaperSizes:"
46*219b2ee8SDavid du Colombier #define DOCUMENTPAPERFORMS		"%%DocumentPaperForms:"
47*219b2ee8SDavid du Colombier #define DOCUMENTPAPERCOLORS		"%%DocumentPaperColors:"
48*219b2ee8SDavid du Colombier #define DOCUMENTPAPERWEIGHTS		"%%DocumentPaperWeights:"
49*219b2ee8SDavid du Colombier #define DOCUMENTPRINTERREQUIRED		"%%DocumentPrinterREquired:"
50*219b2ee8SDavid du Colombier #define ENDCOMMENTS			"%%EndComments\n"
51*219b2ee8SDavid du Colombier #define ENDPROLOG			"%%EndProlog\n"
52*219b2ee8SDavid du Colombier 
53*219b2ee8SDavid du Colombier /*
54*219b2ee8SDavid du Colombier  *
55*219b2ee8SDavid du Colombier  * Body comments - can appear anywhere in a document.
56*219b2ee8SDavid du Colombier  *
57*219b2ee8SDavid du Colombier  */
58*219b2ee8SDavid du Colombier 
59*219b2ee8SDavid du Colombier #define BEGINSETUP			"%%BeginSetup\n"
60*219b2ee8SDavid du Colombier #define ENDSETUP			"%%EndSetup\n"
61*219b2ee8SDavid du Colombier #define BEGINDOCUMENT			"%%BeginDocument:"
62*219b2ee8SDavid du Colombier #define ENDDOCUMENT			"%%EndDocument\n"
63*219b2ee8SDavid du Colombier #define BEGINFILE			"%%BeginFile:"
64*219b2ee8SDavid du Colombier #define ENDFILE				"%%EndFile\n"
65*219b2ee8SDavid du Colombier #define BEGINPROCSET			"%%BeginProcSet:"
66*219b2ee8SDavid du Colombier #define ENDPROCSET			"%%EndProcSet\n"
67*219b2ee8SDavid du Colombier #define BEGINBINARY			"%%BeginBinary:"
68*219b2ee8SDavid du Colombier #define ENDBINARY			"%%EndBinary\n"
69*219b2ee8SDavid du Colombier #define BEGINPAPERSIZE			"%%BeginePaperSize:"
70*219b2ee8SDavid du Colombier #define ENDPAPERSIZE			"%%EndPaperSize\n"
71*219b2ee8SDavid du Colombier #define BEGINFEATURE			"%%BeginFeature:"
72*219b2ee8SDavid du Colombier #define ENDFEATURE			"%%EndFeature\n"
73*219b2ee8SDavid du Colombier #define BEGINEXITSERVER			"%%BeginExitServer:"
74*219b2ee8SDavid du Colombier #define ENDEXITSERVER			"%%EndExitServer\n"
75*219b2ee8SDavid du Colombier #define TRAILER				"%%Trailer\n"
76*219b2ee8SDavid du Colombier 
77*219b2ee8SDavid du Colombier /*
78*219b2ee8SDavid du Colombier  *
79*219b2ee8SDavid du Colombier  * Page level comments - usually will occur once per page.
80*219b2ee8SDavid du Colombier  *
81*219b2ee8SDavid du Colombier  */
82*219b2ee8SDavid du Colombier 
83*219b2ee8SDavid du Colombier #define PAGE				"%%Page:"
84*219b2ee8SDavid du Colombier #define PAGEFONTS			"%%PageFonts:"
85*219b2ee8SDavid du Colombier #define PAGEFILES			"%%PageFiles:"
86*219b2ee8SDavid du Colombier #define PAGEBOUNDINGBOX			"%%PageBoundingBox:"
87*219b2ee8SDavid du Colombier #define BEGINPAGESETUP			"%%BeginPageSetup\n"
88*219b2ee8SDavid du Colombier #define BEGINOBJECT			"%%BeginObject:"
89*219b2ee8SDavid du Colombier #define ENDOBJECT			"%%EndObject\n"
90*219b2ee8SDavid du Colombier 
91*219b2ee8SDavid du Colombier /*
92*219b2ee8SDavid du Colombier  *
93*219b2ee8SDavid du Colombier  * Resource requirements - again can appear anywhere in a document.
94*219b2ee8SDavid du Colombier  *
95*219b2ee8SDavid du Colombier  */
96*219b2ee8SDavid du Colombier 
97*219b2ee8SDavid du Colombier #define INCLUDEFONT			"%%IncludeFont:"
98*219b2ee8SDavid du Colombier #define INCLUDEPROCSET			"%%IncludeProcSet:"
99*219b2ee8SDavid du Colombier #define INCLUDEFILE			"%%IncludeFile:"
100*219b2ee8SDavid du Colombier #define EXECUTEFILE			"%%ExecuteFile:"
101*219b2ee8SDavid du Colombier #define CHANGEFONT			"%%ChangeFont:"
102*219b2ee8SDavid du Colombier #define PAPERFORM			"%%PaparForm:"
103*219b2ee8SDavid du Colombier #define PAPERCOLOR			"%%PaperColor:"
104*219b2ee8SDavid du Colombier #define PAPERWEIGHT			"%%PaperWeight:"
105*219b2ee8SDavid du Colombier #define PAPERSIZE			"%%PaperSize:"
106*219b2ee8SDavid du Colombier #define FEATURE				"%%Feature:"
107*219b2ee8SDavid du Colombier #define ENDOFFILE			"%%EOF\n"
108*219b2ee8SDavid du Colombier 
109*219b2ee8SDavid du Colombier #define CONTINUECOMMENT			"%%+"
110*219b2ee8SDavid du Colombier #define ATEND				"(atend)"
111*219b2ee8SDavid du Colombier 
112*219b2ee8SDavid du Colombier /*
113*219b2ee8SDavid du Colombier  *
114*219b2ee8SDavid du Colombier  * Some non-standard document comments. Global definitions are occasionally used
115*219b2ee8SDavid du Colombier  * in dpost and are marked by BEGINGLOBAL and ENDGLOBAL. The resulting document
116*219b2ee8SDavid du Colombier  * violates page independence, but can easily be converted to a conforming file
117*219b2ee8SDavid du Colombier  * using a utililty program.
118*219b2ee8SDavid du Colombier  *
119*219b2ee8SDavid du Colombier  */
120*219b2ee8SDavid du Colombier 
121*219b2ee8SDavid du Colombier #define BEGINSCRIPT			"%%BeginScript\n"
122*219b2ee8SDavid du Colombier #define BEGINGLOBAL			"%%BeginGlobal\n"
123*219b2ee8SDavid du Colombier #define ENDGLOBAL			"%%EndGlobal\n"
124*219b2ee8SDavid du Colombier #define ENDPAGE				"%%EndPage:"
125*219b2ee8SDavid du Colombier #define FORMSPERPAGE			"%%FormsPerPage:"
126*219b2ee8SDavid du Colombier #define VERSION				"%%Version:"
127*219b2ee8SDavid du Colombier 
128