home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Acorn User 4
/
AUCD4.iso
/
acorn
/
riscos
/
releases
/
ro2extra
/
!PrinterPS
/
PSprolog
< prev
next >
Wrap
Text File
|
1989-04-27
|
10KB
|
259 lines
% > <PDriver$Dir>.<PDriver$PSprologue>
% User-editable prologue definitions for the PostScript printer driver
% module.
% Version 2.03, first used with version 2.04 of the module.
%%DocumentFonts: Courier Courier-Oblique Courier-Bold
%%+ Courier-BoldOblique Helvetica Helvetica-Oblique Helvetica-Bold
%%+ Helvetica-BoldOblique NewCenturySchlbk-Bold Times-Roman
%%+ Times-Italic Times-Bold Times-BoldItalic ZapfDingbats
%%EndComments
% If you add further fonts to the '%%DocumentFonts:' and '%%+" comments
% above, make certain that you keep strictly to the format above - in
% particular, all names are case-sensitive, exactly one space should
% appear between the start of the comment and the first font name on
% the line, exactly one space should appear between font names, and
% there should no surplus spaces at the ends of lines.
% Note also that all PostScript font names quoted in the font
% translation data at the bottom of this file should appear in these
% comments.
% Note for advanced users: the printer driver module will remove
% PostScript comments from this file when copying it into the PostScript
% output (to avoid excessive amounts of output) according to the
% following simple algorithm:
% (a) If a line starts with "%%" or "%!", it is copied without any
% changes.
% (b) If a line starts with a "%" and does not start with "%%" or
% "%!", the whole line is removed, including the new line at the
% end of it.
% (c) If a "%" appears anywhere else in a line that does not start
% with "%%" or "%!", it and all characters up to but not including
% the following new line are removed.
% In the unlikely event that you wish to add some PostScript containing
% e.g. a string with a "%" in it, use the "\045" escape sequence
% instead.
% The printer driver will also compress multiple new lines down to
% one new line when copying this file.
% CHARACTER ENCODING VECTORS
% The following chunk of PostScript defines the ISO 8859-1 Latin 1
% mapping of character codes to PostScript character names, plus
% Acorn's extensions to this character encoding. It can be edited if
% necessary to produce other encodings. Note that PostScript character
% names are case-sensitive. Also note that if you add composite
% characters, you must make certain that all their components appear
% somewhere in the encoding vector - if necessary, among the unused
% codes 0-31.
/Latin1Enc [
/dotlessi /ring /.notdef /.notdef % Codes 0-31 (character
/.notdef /.notdef /.notdef /.notdef % components required to
/.notdef /.notdef /.notdef /.notdef % make all the composite
/.notdef /.notdef /.notdef /.notdef % characters work).
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/space /exclam /quotedbl /numbersign % Codes 32-63
/dollar /percent /ampersand /quotesingle
/parenleft /parenright /asterisk /plus
/comma /hyphen /period /slash
/zero /one /two /three
/four /five /six /seven
/eight /nine /colon /semicolon
/less /equal /greater /question
/at /A /B /C % Codes 64-95
/D /E /F /G
/H /I /J /K
/L /M /N /O
/P /Q /R /S
/T /U /V /W
/X /Y /Z /bracketleft
/backslash /bracketright /circumflex /underscore
/grave /a /b /c % Codes 96-127
/d /e /f /g
/h /i /j /k
/l /m /n /o
/p /q /r /s
/t /u /v /w
/x /y /z /braceleft
/bar /braceright /tilde /.notdef % NB code 127 is unused
/.notdef /.notdef /.notdef /.notdef % Codes 128-139 (Wimp characters)
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /bullet % Codes 140-159 (Acorn extensions)
/quoteleft /quoteright /guilsinglleft /guilsinglright
/quotedblleft /quotedblright /quotedblbase /endash
/emdash /minus /OE /oe
/dagger /daggerdbl /fi /fl
/space /exclamdown /cent /sterling % Codes 160-191
/currency /yen /brokenbar /section
/dieresis /copyright /ordfeminine /guillemotleft
/logicalnot /hyphen /registered /macron
/degree /plusminus /twosuperior /threesuperior
/acute /mu /paragraph /periodcentered
/cedilla /onesuperior /ordmasculine /guillemotright
/onequarter /onehalf /threequarters /questiondown
/Agrave /Aacute /Acircumflex /Atilde % Codes 192-223
/Adieresis /Aring /AE /Ccedilla
/Egrave /Eacute /Ecircumflex /Edieresis
/Igrave /Iacute /Icircumflex /Idieresis
/Eth /Ntilde /Ograve /Oacute
/Ocircumflex /Otilde /Odieresis /multiply
/Oslash /Ugrave /Uacute /Ucircumflex
/Udieresis /Yacute /Thorn /germandbls
/agrave /aacute /acircumflex /atilde % Codes 224-255
/adieresis /aring /ae /ccedilla
/egrave /eacute /ecircumflex /edieresis
/igrave /iacute /icircumflex /idieresis
/eth /ntilde /ograve /oacute
/ocircumflex /otilde /odieresis /divide
/oslash /ugrave /uacute /ucircumflex
/udieresis /yacute /thorn /ydieresis
] def
% This is an encoding vector for a font that is a subset of
% ZapfDingbats. It has some permutations from the original ZapfDingbats
% encoding to ensure that a set of convenient varied bullet characters
% are all drawn together in the codes &61 to &6F.
% These permutations are as follows:
% swap &25 (a4) with &61 (a60)
% move &34 (a20) to &62
% move &38 (a24) to &63
% swap &48 (a35) with &65 (a64)
% move &5D (a56) to &66
% move &70 (a203)to &67
% move &71 (a75) to &68
% swap &72 (a204)with &69 (a68)
% move &75 (a78) to &6A
% swap &E7 (a177)with &6B (a70)
/SelwynEnc [
/.notdef /.notdef /.notdef /.notdef % Codes 0-31 (character
/.notdef /.notdef /.notdef /.notdef % components required to
/.notdef /.notdef /.notdef /.notdef % make all the composite
/.notdef /.notdef /.notdef /.notdef % characters work).
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/space /a1 /a2 /a202 % Codes 32-63
/a3 /a60 /.notdef /a119
/.notdef /a117 /a11 /a12
/.notdef /a14 /.notdef /.notdef
/.notdef /.notdef /.notdef /a19
/.notdef /a21 /a22 /.notdef
/.notdef /a25 /a26 /a27
/a28 /a6 /a7 /a8
/a9 /a10 /.notdef /.notdef % Codes 64-95
/.notdef /.notdef /a33 /a34
/a64 /a36 /a37 /.notdef
/a39 /a40 /.notdef /.notdef
/a43 /a44 /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /a54
/a55 /.notdef /a57 /a58
/a59 /a4 /a20 /a24 % Codes 96-127
/a63 /a35 /a56 /a203
/a75 /a204 /a78 /a177
/a71 /a72 /a73 /a74
/.notdef /.notdef /a68 /a76
/a77 /.notdef /a79 /a81
/a82 /a83 /a84 /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef % Codes 128-159
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef % Codes 160-191
/.notdef /.notdef /.notdef /.notdef
/a112 /a111 /a110 /a109
/a120 /a121 /a122 /a123
/a124 /a125 /a126 /a127
/a128 /a129 /a130 /a131
/a132 /a133 /a134 /a135
/a136 /a137 /a138 /a139
/.notdef /.notdef /.notdef /.notdef % Codes 192-223
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /a161 /a163 /a164
/a196 /a165 /a192 /.notdef
/a167 /.notdef /.notdef /.notdef
/.notdef /.notdef /a173 /a162 % Codes 224-255
/a174 /a175 /a176 /a70
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
/acorn /.notdef /.notdef /.notdef % Acorn character not available,
/.notdef /.notdef /.notdef /.notdef % so becomes /.notdef
/.notdef /.notdef /.notdef /.notdef
/.notdef /.notdef /.notdef /.notdef
] def
% Unless you really know what you are doing, do not edit the following
% PostScript, except for the indicated possible changes.
% The size of the following dictionary can be changed. One entry is used
% for each font translation and one entry is used for the system font.
/fonts 100 dict def
/ChkCh {
dup Encoding exch get
CharStrings exch known {pop} {Encoding exch /.notdef put} ifelse
} bind def
/FF {
3 1 roll
findfont begin
currentdict dup maxlength 1 add dict begin
{1 index /FID ne {def} {pop pop} ifelse} forall
/Encoding 3 -1 roll 256 array copy def
/Metrics 1 dict def
Metrics /.notdef 0 put
% Possible change: Delete or comment out the following line if you
% want undefined PostScript characters to generate errors rather than
% be ignored.
0 1 255 /ChkCh load for
dup currentdict
end
end
definefont
fonts 3 1 roll put
} bind def
% The font translation data follows. You can install further
% translations by adding lines of the form:
% /<RISC OS font name> /<PostScript font name> <encoding name> FF
% Note that all names are case-sensitive. Also note that you should
% add any additional PostScript font names that appear here to the
% '%%DocumentFonts' comment at the head of this file.
% This line will take a copy of the PostScript font specified, copy
% the specified encoding into it to get the right mapping of character
% codes to characters, change the width of the undefined character to
% zero and install the result as a new font whose name is the RISC OS
% font name. In addition, it checks that all of the characters named
% in the encoding vector exist in the font: any that don't are removed
% (i.e. replaced by '/.notdef') from the new font's encoding.
/Corpus.Medium /Courier Latin1Enc FF
/Corpus.Medium.Oblique /Courier-Oblique Latin1Enc FF
/Corpus.Bold /Courier-Bold Latin1Enc FF
/Corpus.Bold.Oblique /Courier-BoldOblique Latin1Enc FF
/Homerton.Medium /Helvetica Latin1Enc FF
/Homerton.Medium.Oblique /Helvetica-Oblique Latin1Enc FF
/Homerton.Bold /Helvetica-Bold Latin1Enc FF
/Homerton.Bold.Oblique /Helvetica-BoldOblique Latin1Enc FF
/NewHall.Bold /NewCenturySchlbk-Bold Latin1Enc FF
/Selwyn /ZapfDingbats SelwynEnc FF
/Trinity.Medium /Times-Roman Latin1Enc FF
/Trinity.Medium.Italic /Times-Italic Latin1Enc FF
/Trinity.Bold /Times-Bold Latin1Enc FF
/Trinity.Bold.Italic /Times-BoldItalic Latin1Enc FF