home *** CD-ROM | disk | FTP | other *** search
/ Chip 1997 January / Chip_1997-01_cd.bin / autocad / acltldv / aclt.psf < prev    next >
Text File  |  1995-07-26  |  15KB  |  528 lines

  1. ;
  2. ;   PostScript font substitution map
  3. ;
  4. ;   This file currently defines all the fonts included with
  5. ;   Adobe Type Manager for Windows, the Adobe Plus Pack,
  6. ;   Adobe Font Pack 1, as well as the Linguist fonts distributed
  7. ;   with AutoCAD.
  8. ;
  9. *fonts
  10. ;
  11. ; The first column is the base name of the shape, compiled shape,
  12. ; or Adobe Type 1 font definition. The second column is the official
  13. ; PostScript name of the font.  Trailing underscores should be
  14. ; ignored. For example, the file containing the font "AvantGarde-Demi"
  15. ; might be called AGD_____.PFB; the entry in the first column would
  16. ; be "agd". Following the long name, there may be other flags; currently
  17. ; the only flag interpreted by AutoCAD is ISO, which means the font is
  18. ; already ISO-encoded and does not need further remapping.
  19. ;
  20. ;
  21. agd         AvantGarde-Demi
  22. agdo        AvantGarde-DemiOblique
  23. agw         AvantGarde-Book
  24. agwo        AvantGarde-BookOblique
  25. bdps        Bodoni-Poster
  26. bkd         Bookman-Demi
  27. bkdi        Bookman-DemiItalic
  28. bkl         Bookman-Light
  29. bkli        Bookman-LightItalic
  30. c           Cottonwood
  31. cibt        CityBlueprint
  32. cob         Courier-Bold
  33. cobo        Courier-BoldOblique
  34. cobt        CountryBlueprint
  35. com         Courier
  36. coo         Courier-Oblique
  37. eur         EuroRoman 
  38. euro        EuroRoman-Oblique 
  39. fs          FreestyleScript
  40. ho          Hobo
  41. hv          Helvetica
  42. hvb         Helvetica-Bold
  43. hvbo        Helvetica-BoldOblique
  44. hvn         Helvetica-Narrow
  45. hvnb        Helvetica-Narrow-Bold
  46. hvnbo       Helvetica-Narrow-BoldOblique
  47. hvno        Helvetica-Narrow-Oblique
  48. hvo         Helvetica-Oblique
  49. lx          Linotext
  50. ncb         NewCenturySchlbk-Bold
  51. ncbi        NewCenturySchlbk-BoldItalic
  52. nci         NewCenturySchlbk-Italic
  53. ncr         NewCenturySchlbk-Roman
  54. par         PanRoman
  55. pob         Palatino-Bold
  56. pobi        Palatino-BoldItalic
  57. poi         Palatino-Italic
  58. por         Palatino-Roman
  59. rom         Romantic
  60. romb        Romantic-Bold
  61. romi        Romantic-Italic
  62. sas         SansSerif
  63. sasb        SansSerif-Bold
  64. sasbo       SansSerif-BoldOblique
  65. saso        SansSerif-Oblique
  66. suf         SuperFrench
  67. sy          Symbol
  68. te          Technic
  69. teb         Technic-Bold
  70. tel         Technic-Light
  71. tib         Times-Bold
  72. tibi        Times-BoldItalic
  73. tii         Times-Italic
  74. tir         Times-Roman
  75. tjrg        Trajan-Regular
  76. vrb         VAGRounded-Bold
  77. zcmi        ZapfChancery-MediumItalic
  78. zd          ZapfDingbats
  79. ;
  80. ; Some additional font mappings. To use any of these fonts,
  81. ; just remove the semicolon from the beginning of the line.
  82. ; These have not been tested by Autodesk, and are included as
  83. ; a convenience only.
  84. ;
  85. ;akj    AksarJhar ISO
  86. ;ar     Armenian ISO
  87. ;arlvi  AradLevelVI ISO
  88. ;ay     Ayudhya ISO
  89. ;ayb    AyudhyaBold ISO
  90. ;ba     Bangkok ISO
  91. ;chm    ChangMai ISO
  92. ;chmb   ChiangMaiBold ISO
  93. ;gr     Graeca ISO
  94. ;gro    GraecaOblique ISO
  95. ;gu     Gujarati ISO
  96. ;he     Hebraica ISO
  97. ;higj   HiGwangJu ISO
  98. ;hii    HiInchon ISO
  99. ;his    HindiSanskrit ISO
  100. ;ho     Hobo ISO
  101. ;ipa    IPAsans ISO
  102. ;ipak   IPAKiel ISO
  103. ;ipakb  IPAKiel-Bold ISO
  104. ;khk    KhunKrit ISO
  105. ;khkb   KhunKrit-Bold ISO
  106. ;khkbi  KhunKrit-BoldItalic ISO
  107. ;khki   KhunKrit-Italic ISO
  108. ;la     Laotian ISO
  109. ;nah    NaayHaang ISO
  110. ;nahb   NaayHaang-Bold ISO
  111. ;nahbi  NaayHaang-BoldItalic ISO
  112. ;nahi   NaayHaang-Italic ISO
  113. ;nehp   NewHiPusan ISO
  114. ;nej    NewJeju ISO
  115. ;nes    NewSeoul ISO
  116. ;ph     Phatphong ISO
  117. ;phb    Phatphong-Bold ISO
  118. ;phbi   Phatphong-BoldItalic ISO
  119. ;phi    Phatphong-Italic ISO
  120. ;ro     Romance ISO
  121. ;rob    RomanceBold ISO
  122. ;roi    RomanceItalic ISO
  123. ;se     Semitica ISO
  124. ;seb    SemiticaBold ISO
  125. ;sei    SemiticaItalic ISO
  126. ;su     Sukanya ISO
  127. ;sub    Sukanya-Bold ISO
  128. ;tbc    TbilisiCaps ISO
  129. ;tbt    TbilisiText ISO
  130. ;th     Thonburi ISO
  131. ;ti     Tibetan ISO
  132. ;trc    TransCyrillic ISO
  133. ;trcb   TransCyrillic-Bold ISO
  134. ;trcbi  TransCyrillic-BoldItalic ISO
  135. ;trci   TransCyrillic-Italic ISO
  136. ;trcs   TransCyrillicSans ISO
  137. ;trcsb  TransCyrillicSans-Bold ISO
  138. ;trcsbo TransCyrillicSans-BoldOblique ISO
  139. ;trcso  TransCyrillicSans-Oblique ISO
  140. ;vib    VinaBook ISO
  141. ;vic    VinaChan ISO
  142. ;vip    VinaPala ISO
  143. ;vir    VinaRoman ISO
  144. ;vis    VinaSans ISO
  145. ;
  146. ; Font mappings to avoid downloading.
  147. ; These mappings are not supported, and, in some cases, may not
  148. ; produce proper results; use at your own risk.  These mappings are
  149. ; included as a convenience only. To activate these, comment out the
  150. ; corresponding mapping above by inserting a semicolon (;) at the
  151. ; beginning of the line.
  152. ;
  153. ; Note also that if you completely comment out all entries for a font,
  154. ; then PSOUT will not attempt to convert the text to PostScript text
  155. ; entities, and will instead output them as (unfilled) outlines. This 
  156. ; will result in larger .eps files, but for certain fonts, in particular
  157. ; stroke fonts such as City Blueprint, will look the same.
  158. ;
  159. saso    Helvetica-Oblique
  160. sas     Helvetica
  161. sasb    Helvetica-Bold
  162. sasbo   Helvetica-BoldOblique
  163. rom     Times-Roman
  164. romb    Times-Bold
  165. romi    Times-Italic
  166. ;
  167. ;   PostScript figure inclusion procedures
  168. ;
  169. ; Taken from PostScript manual verbatim
  170. *figureprologue
  171. /IncludeFig { 
  172.         /b4_Inc_state save def
  173.         /dict_count countdictstack def
  174.         /op_count count 1 sub def
  175.         userdict begin
  176.         /showpage {} def
  177.         0 setgray 0 setlinecap
  178.         1 setlinewidth 0 setlinejoin
  179.         10 setmiterlimit [] 0 setdash newpath
  180.         /languagelevel where
  181.         {pop languagelevel
  182.                 1 ne
  183.                 {false setstrokeadjust false setoverprint
  184.                 }if
  185.         }if
  186. }bind def
  187.         
  188. ;
  189. ; % Args are llx lly urx ury (in figure coordinates)
  190. ;
  191. ;/clipFig {
  192. ;       currentpoint 6 2 roll
  193. ;       newpath 4 copy
  194. ;       4 2 roll moveto
  195. ;       6 -1 roll exch lineto
  196. ;       exch lineto
  197. ;       exch lineto
  198. ;       closepath clip
  199. ;       moveto
  200. ; } def
  201. ;
  202. ; % doclip, if called, will always be just after a `startfig'
  203. ;
  204. ; /doclip { llx lly urx ury clipFig } def
  205.  
  206. /EndIncludeFig {
  207.            count op_count sub {pop} repeat
  208.            countdictstack dict_count sub {end} repeat
  209.            b4_Inc_state restore
  210. } bind def
  211. ;
  212. *sampleprolog
  213. ; Sample PSPROLOG. Many other methods of implementation are possible. 
  214. ;
  215. ; This entire section (without full-line comments)
  216. ; gets inserted into the PSOUT file after the
  217. ; AutoCAD generated transformations. Thus, this section can contain code
  218. ; to globally rotate, translate, and otherwise transform the image.
  219. ;
  220. ; To rotate an image, an example (for 8.5" high paper), include the
  221. ; instructions
  222. ;
  223. ;    0 8.5 72 mul translate   % 8.5 inches times 72 pts per inch
  224. ;    -90 rotate               % Positive means counterclockwise
  225. ;
  226. ; Three functions are prime candidates for redefinition:
  227. ;
  228. ;       ACADColor
  229. ;               i r g b ACADColor -
  230. ;       gets called every time the color changes. r, g, b are values from 0 to 1,
  231. ;       while i is number from 1 to 254, corresponding to the ACAD color number.
  232. ;       The default implementation is:
  233. ;/ACADColor { setrgbcolor pop } def
  234. ;
  235. ;
  236. ;       ACADLayer
  237. ;               name ACADLayer -
  238. ; gets called when the layer changes. The layer name is presented as a string.
  239. ; The default is to do nothing with this information; the default
  240. ; implementation is
  241. ;
  242. ;/ACADLayer { pop } def
  243. ;
  244. ;       ACADLtype
  245. ;               name pattern alignment ACADLtype -
  246. ; gets called when the line type changes. "name" is the name of the linetype,
  247. ; and could be used as a key into a dictionary. "pattern" is an array consisting
  248. ; of what AutoCAD refers to as the "dash-n" fields. "alignment" is the AutoCAD
  249. ; alignment specification, which at present is always the string (A).
  250. ; The default implementation is quite complicated.
  251. ;
  252. ; An example set of redefinitions follow.
  253. ;
  254. ; First, define a local dictionary; userdict certainly won't have enough
  255. ; space for big tables of colors.
  256. ;
  257. /SamplePrologDict 300 dict def
  258. ;
  259. ;       n tocname --
  260. ;       create a name "colorN" for later lookup. This approach doesn't
  261. ;       make particularly readable names, but it is compact.
  262. SamplePrologDict begin
  263. /tocname {
  264.         6 string dup 0 (color) putinterval dup 5 4 -1 roll put cvn
  265.         } bind def
  266.  
  267. ;       n routine color --
  268. ;       defines a color entry, putting it in mydict.
  269. /color { exch tocname exch bind def } bind def
  270. end
  271. ;
  272. ;       Now, the lookup.
  273. ; Note that is is VITAL to clear the stack in called routines; ACADColor will
  274. ; only take the garbage off if there is not a special entry for this color 
  275. ; Note that ACADColor must _not_ be in SamplePrologDict.
  276.  
  277. ;
  278. ; Note that the linewidth is scaled along with everything else. This
  279. ; might not be what you want! But the color and linetype and such are
  280. ; declared before the geometry is declared -- so we have to do a little
  281. ; magick to get it _really_ the way we want it.
  282. ;
  283. ;
  284. SamplePrologDict begin
  285. /_ACADLayer { ACADLayer } bind def
  286. /_ACADLtype { ACADLtype } bind def
  287. /_ACADColor {
  288.         SamplePrologDict begin
  289.         3 index tocname dup
  290.         SamplePrologDict exch known
  291.         { cvx exec }
  292.         { pop defaultcolor }
  293.         ifelse
  294.         end
  295. } bind def
  296. /acad-layer-known false def
  297. /acad-color-known false def
  298. /acad-linetype-known false def
  299. end
  300.  
  301. /ACADLayer {
  302.         SamplePrologDict begin
  303.         /acad-layer exch def
  304.         /acad-layer-known true def
  305.         end
  306. } bind def
  307. /ACADColor {
  308.         SamplePrologDict begin
  309.         4 array astore /acad-color exch def
  310.         /acad-color-known true def
  311.         end
  312. } bind def
  313. /ACADLtype {
  314.     SamplePrologDict begin
  315.     3 array astore /acad-ltype exch def
  316.     /acad-linetype-known true def
  317.     end
  318. } bind def
  319.  
  320. ; Now some example color defs.
  321. ; Make sure to put them in SamplePrologDict
  322. SamplePrologDict begin
  323. /scaledown { matrix currentmatrix 0 get div } bind def
  324. ; Color 1 just wants nice thin green lines.
  325. 1 { pop pop pop pop 0 scaledown setlinewidth 0 1 0 setrgbcolor } color
  326. ; Color 2 wants 36 point red lines
  327. 2 { pop pop pop pop 36 scaledown setlinewidth 1 0 0 setrgbcolor } color
  328. ; Everything else gets thin self-colored lines.
  329. /defaultcolor { 0 setlinewidth setrgbcolor pop } bind def
  330. end
  331. ; The next line is to make sure line widths are controlled only from the
  332. ; color-setting code.
  333. /setlinewidth { pop } def
  334.  
  335.  
  336. ; Now we redefine "stroke" so that it calls our procedures first.
  337. ; Notice that /stroke includes "stroke" in the definition; this is so
  338. ; that the old definition of stroke is used in the new definition -- and
  339. ; the "bind" makes it so. We do the same to "fill".
  340.  
  341. /prestroke {
  342.         SamplePrologDict begin
  343.             acad-color-known {
  344.                 /acad-color-known false def
  345.                 acad-color aload pop _ACADColor
  346.             } if
  347.             acad-layer-known {
  348.                 /acad-layer-known false def
  349.                 acad-layer _ACADLayer
  350.             } if
  351.             acad-linetype-known {
  352.                 /acad-linetype-known false def
  353.                 acad-ltype aload pop _ACADLtype
  354.             } if
  355.         end
  356.     } bind def
  357. /stroke { prestroke stroke } bind def
  358. /fill   { prestroke fill } bind def
  359. ;
  360. ;
  361. ;   End of sample prolog.
  362. ;
  363. ;
  364. ;   PostScript ISO font re-mapping procedure
  365. ;
  366. *isofontprologue
  367. /reencodedict 12 dict def
  368.  
  369. /ReEncode {
  370.     reencodedict begin
  371.         /newcodesandnames exch def
  372.         /newfontname exch def
  373.         /basefontname exch def
  374.         /basefontdict basefontname findfont def
  375.         /newfont basefontdict maxlength dict def
  376.         basefontdict {
  377.             exch dup /FID ne
  378.                 {dup /Encoding eq
  379.                     { exch dup length array copy newfont 3 1 roll put }
  380.                     { exch newfont 3 1 roll put }
  381.                  ifelse
  382.                 }
  383.                 { pop pop }
  384.             ifelse
  385.         } forall
  386.         newfont /FontName newfontname put
  387.         newcodesandnames aload pop
  388.         newcodesandnames length 2 idiv
  389.             { newfont /Encoding get 3 1 roll put }
  390.         repeat
  391.         newfontname newfont definefont pop
  392.     end
  393. } def
  394.  
  395. /ISO [
  396.         127 /degree
  397.         128 /plusminus
  398.         129 /emptyset
  399.  
  400. %   ISO characters moved here to avoid SEAC conflicts
  401.         130 /Aacute
  402.         131 /Acircumflex
  403.         132 /Atilde
  404.         133 /Adieresis
  405.         134 /Aring
  406.         135 /AE
  407.         136 /Ccedilla
  408.         137 /Egrave
  409.         138 /Eacute
  410.         139 /Ecircumflex
  411.         140 /Edieresis
  412.         141 /Igrave
  413.         142 /Iacute
  414.         143 /Icircumflex
  415.         144 /Idieresis
  416. %   End ISO characters moved
  417.  
  418.         145 /quoteleft
  419.         146 /quoteright
  420.  
  421. %   ISO character moved here to avoid SEAC conflicts
  422.         147 /otilde
  423. %   End ISO character moved
  424.  
  425.         160 /space
  426.         161 /exclamdown
  427.         162 /cent
  428.         163 /sterling
  429.         164 /currency
  430.         165 /yen
  431.         166 /bar
  432.         167 /section
  433.         168 /dieresis
  434.         169 /copyright
  435.         170 /ordfeminine
  436.         171 /guillemotleft
  437.         172 /logicalnot
  438.         173 /minus
  439.         174 /registered
  440.         175 /hyphen
  441.         176 /ring
  442.         177 /plusminus
  443.         178 /twosuperior
  444.         179 /threesuperior
  445.         180 /acute
  446.         181 /mu
  447.         182 /paragraph
  448.         183 /periodcentered
  449.         184 /cedilla
  450.         185 /onesuperior
  451.         186 /ordmasculine
  452.         187 /guillemotright
  453.         188 /onequarter
  454.         189 /onehalf
  455.         190 /threequarters
  456.         191 /questiondown
  457.         192 /Agrave
  458. ;   Following ISO characters moved to avoid SEAC conflicts
  459. ;       193 /Aacute
  460. ;       194 /Acircumflex
  461. ;       195 /Atilde
  462. ;       196 /Adieresis
  463. ;       197 /Aring
  464. ;       198 /AE
  465. ;       199 /Ccedilla
  466. ;       200 /Egrave
  467. ;       201 /Eacute
  468. ;       202 /Ecircumflex
  469. ;       203 /Edieresis
  470. ;       204 /Igrave
  471. ;       205 /Iacute
  472. ;       206 /Icircumflex
  473. ;       207 /Idieresis
  474. ;   Preceding ISO characters moved to avoid SEAC conflicts
  475.         208 /Eth
  476.         209 /Ntilde
  477.         210 /Ograve
  478.         211 /Oacute
  479.         212 /Ocircumflex
  480.         213 /Otilde
  481.         214 /Odieresis
  482.         215 /multiply
  483.         216 /Oslash
  484.         217 /Ugrave
  485.         218 /Uacute
  486.         219 /Ucircumflex
  487.         220 /Udieresis
  488.         221 /Yacute
  489.         222 /Thorn
  490.         223 /germandbls
  491.         224 /agrave
  492.         225 /aacute
  493.         226 /acircumflex
  494.         227 /atilde
  495.         228 /adieresis
  496.         229 /aring
  497.         230 /ae
  498.         231 /ccedilla
  499.         232 /egrave
  500.         233 /eacute
  501.         234 /ecircumflex
  502.         235 /edieresis
  503.         236 /igrave
  504.         237 /iacute
  505.         238 /icircumflex
  506.         239 /idieresis
  507.         240 /eth
  508.         241 /ntilde
  509.         242 /ograve
  510.         243 /oacute
  511.         244 /ocircumflex
  512. ;   Following ISO character moved to avoid SEAC conflicts
  513. ;       245 /otilde
  514. ;   Preceding ISO character moved to avoid SEAC conflicts
  515.         246 /odieresis
  516.         247 /divide
  517.         248 /oslash
  518.         249 /ugrave
  519.         250 /uacute
  520.         251 /ucircumflex
  521.         252 /udieresis
  522.         253 /yacute
  523.         254 /thorn
  524.         255 /ydieresis
  525. ] def
  526. def
  527.  
  528.