home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / ietf / oncrpc / oncrpc-slides3-96jun.ps < prev    next >
Text File  |  1996-10-08  |  14KB  |  583 lines

  1. /orgfreq exch def
  2. cvlit /orgbproc exch def
  3. /orgbangle exch def
  4. /orgbfreq exch def
  5. cvlit /orggproc exch def
  6. /orggangle exch def
  7. /orggfreq exch def
  8. cvlit /orgrproc exch def
  9. /orgrangle exch def
  10. /orgrfreq exch def
  11. currentcolortransfer
  12. fMNegative {
  13. 1 1 4 {
  14. pop { 1 exch sub } fmConcatProcs 4 1 roll
  15. } for
  16. 4 copy
  17. setcolortransfer
  18. } if
  19. cvlit /orgxfer exch def
  20. cvlit /orgbxfer exch def
  21. cvlit /orggxfer exch def
  22. cvlit /orgrxfer exch def
  23. } {
  24. currentscreen
  25. cvlit /orgproc exch def
  26. /organgle exch def
  27. /orgfreq exch def
  28.  
  29. currenttransfer
  30. fMNegative {
  31. { 1 exch sub } fmConcatProcs
  32. dup settransfer
  33. } if
  34. cvlit /orgxfer exch def
  35. } ifelse
  36. end
  37. } def
  38. /FMBEGINPAGE {
  39. FrameDict begin
  40. /pagesave save def
  41. 3.86 setmiterlimit
  42. /landscape exch 0 ne def
  43. landscape {
  44. 90 rotate 0 exch dup /pwid exch def neg translate pop }{
  45. pop /pwid exch def
  46. } ifelse
  47. edown { [-1 0 0 1 pwid 0] concat } if
  48. 0 0 moveto paperwidth 0 lineto paperwidth paperheight lineto 0 paperheight lineto 0 0 lineto 1 setgray fill xscale yscale scale
  49. /orgmatrix matrix def
  50. gsave
  51. } def
  52. /FMENDPAGE {
  53. grestore
  54. pagesave restore
  55. end
  56. showpage
  57. } def
  58. /FMFONTDEFINE {
  59. FrameDict begin
  60. findfont
  61. ReEncode
  62. 1 index exch
  63. definefont
  64. FMfonts 3 1 roll
  65. put
  66. end
  67. } def
  68. /FMFILLS {
  69. FrameDict begin dup
  70. array /fillvals exch def
  71. dict /patCache exch def
  72. end
  73. } def
  74. /FMFILL {
  75. FrameDict begin
  76. fillvals 3 1 roll put
  77. end
  78. } def
  79. /FMNORMALIZEGRAPHICS {
  80. newpath
  81. 1 setlinewidth
  82. 0 setlinecap
  83. 0 0 0 sethsbcolor
  84. 0 setgray
  85. } bind def
  86. /FMBEGINEPSF {
  87. end
  88. /FMEPSF save def
  89. /showpage {} def
  90. % See Adobe's "PostScript Language Reference Manual, 2nd Edition", page 714. % "...the following operators MUST NOT be used in an EPS file:" (emphasis ours) 
  91. /banddevice {(banddevice) FMBADEPSF} def /clear {(clear) FMBADEPSF} def
  92. /cleardictstack {(cleardictstack) FMBADEPSF} def /copypage {(copypage) FMBADEPSF} def
  93. /erasepage {(erasepage) FMBADEPSF} def
  94. /exitserver {(exitserver) FMBADEPSF} def /framedevice {(framedevice) FMBADEPSF} def /grestoreall {(grestoreall) FMBADEPSF} def /initclip {(initclip) FMBADEPSF} def
  95. /initgraphics {(initgraphics) FMBADEPSF} def /quit {(quit) FMBADEPSF} def
  96. /renderbands {(renderbands) FMBADEPSF} def /setglobal {(setglobal) FMBADEPSF} def
  97. /setpagedevice {(setpagedevice) FMBADEPSF} def /setshared {(setshared) FMBADEPSF} def
  98. /startjob {(startjob) FMBADEPSF} def
  99. /lettertray {(lettertray) FMBADEPSF} def /letter {(letter) FMBADEPSF} def
  100. /lettersmall {(lettersmall) FMBADEPSF} def /11x17tray {(11x17tray) FMBADEPSF} def
  101. /11x17 {(11x17) FMBADEPSF} def
  102. /ledgertray {(ledgertray) FMBADEPSF} def /ledger {(ledger) FMBADEPSF} def
  103. /legaltray {(legaltray) FMBADEPSF} def
  104. /legal {(legal) FMBADEPSF} def
  105. /statementtray {(statementtray) FMBADEPSF} def /statement {(statement) FMBADEPSF} def
  106. /executivetray {(executivetray) FMBADEPSF} def /executive {(executive) FMBADEPSF} def
  107. /a3tray {(a3tray) FMBADEPSF} def
  108. /a3 {(a3) FMBADEPSF} def
  109. /a4tray {(a4tray) FMBADEPSF} def
  110. /a4 {(a4) FMBADEPSF} def
  111. /a4small {(a4small) FMBADEPSF} def
  112. /b4tray {(b4tray) FMBADEPSF} def
  113. /b4 {(b4) FMBADEPSF} def
  114. /b5tray {(b5tray) FMBADEPSF} def
  115. /b5 {(b5) FMBADEPSF} def
  116. FMNORMALIZEGRAPHICS
  117. [/fy /fx /fh /fw /ury /urx /lly /llx] {exch def} forall fx fw 2 div add fy fh 2 div add translate rotate
  118. fw 2 div neg fh 2 div neg translate
  119. fw urx llx sub div fh ury lly sub div scale llx neg lly neg translate
  120. /FMdicttop countdictstack 1 add def
  121. /FMoptop count def
  122. } bind def
  123. /FMENDEPSF {
  124. count -1 FMoptop {pop pop} for
  125. countdictstack -1 FMdicttop {pop end} for FMEPSF restore
  126. FrameDict begin
  127. } bind def
  128. FrameDict begin
  129. /setmanualfeed {
  130. %%BeginFeature *ManualFeed True
  131. statusdict /manualfeed true put
  132. %%EndFeature
  133. } bind def
  134. /max {2 copy lt {exch} if pop} bind def
  135. /min {2 copy gt {exch} if pop} bind def
  136. /inch {72 mul} def
  137. /pagedimen {
  138. paperheight sub abs 16 lt exch
  139. paperwidth sub abs 16 lt and
  140. {/papername exch def} {pop} ifelse
  141. } bind def
  142. /setpapername {
  143. /papersizedict 14 dict def
  144. papersizedict begin
  145. /papername /unknown def
  146. /Letter 8.5 inch 11.0 inch pagedimen
  147. /LetterSmall 7.68 inch 10.16 inch pagedimen /Tabloid 11.0 inch 17.0 inch pagedimen
  148. /Ledger 17.0 inch 11.0 inch pagedimen
  149. /Legal 8.5 inch 14.0 inch pagedimen
  150. /Statement 5.5 inch 8.5 inch pagedimen
  151. /Executive 7.5 inch 10.0 inch pagedimen
  152. /A3 11.69 inch 16.5 inch pagedimen
  153. /A4 8.26 inch 11.69 inch pagedimen
  154. /A4Small 7.47 inch 10.85 inch pagedimen
  155. /B4 10.125 inch 14.33 inch pagedimen
  156. /B5 7.16 inch 10.125 inch pagedimen
  157. end
  158. } bind def
  159. /papersize {
  160. papersizedict begin
  161. /Letter {lettertray letter} def
  162. /LetterSmall {lettertray lettersmall} def /Tabloid {11x17tray 11x17} def
  163. /Ledger {ledgertray ledger} def
  164. /Legal {legaltray legal} def
  165. /Statement {statementtray statement} def /Executive {executivetray executive} def /A3 {a3tray a3} def
  166. /A4 {a4tray a4} def
  167. /A4Small {a4tray a4small} def
  168. /B4 {b4tray b4} def
  169. /B5 {b5tray b5} def
  170. /unknown {unknown} def
  171. papersizedict dup papername known {papername} {/unknown} ifelse get end
  172. statusdict begin stopped end
  173. } bind def
  174. /manualpapersize {
  175. papersizedict begin
  176. /Letter {letter} def
  177. /LetterSmall {lettersmall} def
  178. /Tabloid {11x17} def
  179. /Ledger {ledger} def
  180. /Legal {legal} def
  181. /Statement {statement} def
  182. /Executive {executive} def
  183. /A3 {a3} def
  184. /A4 {a4} def
  185. /A4Small {a4small} def
  186. /B4 {b4} def
  187. /B5 {b5} def
  188. /unknown {unknown} def
  189. papersizedict dup papername known {papername} {/unknown} ifelse get end
  190. stopped
  191. } bind def
  192. /desperatepapersize {
  193. statusdict /setpageparams known
  194. {
  195. paperwidth paperheight 0 1
  196. statusdict begin
  197. {setpageparams} stopped
  198. end
  199. } {true} ifelse
  200. } bind def
  201. /papersizefailure {
  202. FMAllowPaperSizeMismatch not
  203. {
  204. (The requested paper size is not available in any currently-installed tray) (Edit the PS file to "FMAllowPaperSizeMismatch true" to use default tray) 
  205. FMFAILURE } if
  206. } def
  207. /DiacriticEncoding [
  208. /.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 /space /exclam /quotedbl /numbersign /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 /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 /asciicircum /underscore /grave /a /b /c /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 /asciitilde /.notdef /Adieresis /Aring /Ccedilla /Eacute /Ntilde /Odieresis /Udieresis /aacute /agrave /acircumflex /adieresis /atilde /aring /ccedilla /eacute /egrave /ecircumflex /edieresis /iacute /igrave /icircumflex /idieresis /ntilde /oacute /ograve /ocircumflex /odieresis /otilde /uacute /ugrave /ucircumflex /udieresis /dagger /.notdef /cent /sterling /section /bullet /paragraph /germandbls /registered /copyright /trademark /acute /dieresis /.notdef /AE /Oslash /.notdef /.notdef /.notdef /.notdef /yen /.notdef /.notdef /.notdef /.notdef /.notdef /.notdef /ordfeminine /ordmasculine /.notdef /ae /oslash /questiondown /exclamdown /logicalnot /.notdef /florin /.notdef /.notdef /guillemotleft /guillemotright /ellipsis /.notdef /Agrave /Atilde /Otilde /OE /oe /endash /emdash /quotedblleft /quotedblright /quoteleft /quoteright /.notdef /.notdef /ydieresis /Ydieresis /fraction /currency /guilsinglleft /guilsinglright /fi /fl /daggerdbl /periodcentered /quotesinglbase /quotedblbase /perthousand /Acircumflex /Ecircumflex /Aacute /Edieresis /Egrave /Iacute /Icircumflex /Idieresis /Igrave /Oacute /Ocircumflex /.notdef /Ograve /Uacute /Ucircumflex /Ugrave /dotlessi /circumflex /tilde /macron /breve /dotaccent /ring /cedilla /hungarumlaut /ogonek /caron ] def
  209. /ReEncode {
  210. dup
  211. length
  212. dict begin
  213. {
  214. 1 index /FID ne
  215. {def}
  216. {pop pop} ifelse
  217. } forall
  218. 0 eq {/Encoding DiacriticEncoding def} if currentdict
  219. end
  220. } bind def
  221. FMPColor
  222.  
  223. {
  224. /BEGINBITMAPCOLOR {
  225. BITMAPCOLOR} def
  226. /BEGINBITMAPCOLORc {
  227. BITMAPCOLORc} def
  228. /BEGINBITMAPTRUECOLOR {
  229. BITMAPTRUECOLOR } def
  230. /BEGINBITMAPTRUECOLORc {
  231. BITMAPTRUECOLORc } def
  232. /BEGINBITMAPCMYK {
  233. BITMAPCMYK } def
  234. /BEGINBITMAPCMYKc {
  235. BITMAPCMYKc } def
  236. }
  237.  
  238. {
  239. /BEGINBITMAPCOLOR {
  240. BITMAPGRAY} def
  241. /BEGINBITMAPCOLORc {
  242. BITMAPGRAYc} def
  243. /BEGINBITMAPTRUECOLOR {
  244. BITMAPTRUEGRAY } def
  245. /BEGINBITMAPTRUECOLORc {
  246. BITMAPTRUEGRAYc } def
  247. /BEGINBITMAPCMYK {
  248. BITMAPCMYKGRAY } def
  249. /BEGINBITMAPCMYKc {
  250. BITMAPCMYKGRAYc } def
  251. }
  252. ifelse
  253. /K {
  254. FMPrintAllColorsAsBlack {
  255. dup 1 eq 2 index 1 eq and 3 index 1 eq and not 
  256. {7 {pop} repeat 0 0 0 1 0 0 0} if
  257. } if
  258. FrameCurColors astore
  259. pop combineColor
  260. } bind def
  261. /graymode true def
  262. fMLevel1 {
  263. /fmGetFlip {
  264. fMatrix2 exch get mul 0 lt { -1 } { 1 } ifelse } FmBD
  265. } if
  266. /setPatternMode {
  267. fMLevel1 {
  268. 2 index patScreenDict exch known {
  269. pop pop
  270. patScreenDict exch get aload pop
  271. freq
  272. mul
  273. 5 2 roll
  274. fMatrix2 currentmatrix 1 get 0 ne {
  275. 3 -1 roll 90 add 3 1 roll
  276. sflipx 1 fmGetFlip sflipy 2 fmGetFlip neg mul
  277. } {
  278. sflipx 0 fmGetFlip sflipy 3 fmGetFlip mul
  279. } ifelse
  280. 0 lt {exch pop} {pop} ifelse
  281. fMNegative {
  282. {neg} fmConcatProcs
  283. } if
  284. bind
  285.  
  286.  
  287.  
  288. systemdict /setscreen get exec
  289. /FrameCurGray exch def
  290. } {
  291. /bwidth exch def
  292. /bpside exch def
  293. /bstring exch def
  294. /onbits 0 def /offbits 0 def
  295. freq sangle landscape {90 add} if
  296. {/ypoint exch def
  297. /xpoint exch def
  298. /xindex xpoint 1 add 2 div bpside mul cvi def
  299. /yindex ypoint 1 add 2 div bpside mul cvi def
  300. bstring yindex bwidth mul xindex 8 idiv add get
  301. 1 7 xindex 8 mod sub bitshift and 0 ne fMNegative {not} if
  302. {/onbits onbits 1 add def 1}
  303. {/offbits offbits 1 add def 0}
  304. ifelse
  305. }
  306. setscreen
  307. offbits offbits onbits add div fMNegative {1.0 exch sub} if
  308. /FrameCurGray exch def
  309. } ifelse
  310. } {
  311. pop pop
  312. dup patCache exch known {
  313. patCache exch get
  314. } {
  315. dup
  316. patDict /bstring 3 -1 roll put
  317. patDict
  318. 9 PatFreq screenIndex get div dup matrix scale
  319. makepattern
  320. dup
  321. patCache 4 -1 roll 3 -1 roll put
  322. } ifelse
  323. /FrameCurGray 0 def
  324. /FrameCurPat exch def
  325. } ifelse
  326. /graymode false def
  327. combineColor
  328. } bind def
  329. /setGrayScaleMode {
  330. graymode not {
  331. /graymode true def
  332. fMLevel1 {
  333. setCurrentScreen
  334. } if
  335. } if
  336. /FrameCurGray exch def
  337. combineColor
  338. } bind def
  339. /normalize {
  340. transform round exch round exch itransform } bind def
  341. /dnormalize {
  342. dtransform round exch round exch idtransform } bind def
  343. /lnormalize {
  344. 0 dtransform exch cvi 2 idiv 2 mul 1 add exch idtransform pop } bind def
  345. /H {
  346. lnormalize setlinewidth
  347. } bind def
  348. /Z {
  349. setlinecap
  350. } bind def
  351.  
  352. /PFill {
  353. graymode fMLevel1 or not {
  354. gsave 1 setgray eofill grestore
  355. } if
  356. } bind def
  357. /PStroke {
  358. graymode fMLevel1 or not {
  359. gsave 1 setgray stroke grestore
  360. } if
  361. stroke
  362. } bind def
  363. /X {
  364. fillvals exch get
  365. dup type /stringtype eq
  366. {8 1 setPatternMode}
  367. {setGrayScaleMode}
  368. ifelse
  369. } bind def
  370. /V {
  371. PFill gsave eofill grestore
  372. } bind def
  373. /Vclip {
  374. clip
  375. } bind def
  376. /Vstrk {
  377. currentlinewidth exch setlinewidth PStroke setlinewidth } bind def
  378. /N {
  379. PStroke
  380. } bind def
  381. /Nclip {
  382. strokepath clip newpath
  383. } bind def
  384. /Nstrk {
  385. currentlinewidth exch setlinewidth PStroke setlinewidth } bind def
  386. /M {newpath moveto} bind def
  387. /E {lineto} bind def
  388. /D {curveto} bind def
  389. /O {closepath} bind def
  390. /L {
  391. /n exch def
  392. newpath
  393. normalize
  394. moveto
  395. 2 1 n {pop normalize lineto} for
  396. } bind def
  397. /Y {
  398. L
  399. closepath
  400. } bind def
  401. /R {
  402. /y2 exch def
  403. /x2 exch def
  404. /y1 exch def
  405. /x1 exch def
  406. x1 y1
  407. x2 y1
  408. x2 y2
  409. x1 y2
  410. 4 Y
  411. } bind def
  412. /rarc
  413. {rad
  414. arcto
  415. } bind def
  416. /RR {
  417. /rad exch def
  418. normalize
  419. /y2 exch def
  420. /x2 exch def
  421. normalize
  422. /y1 exch def
  423. /x1 exch def
  424. mark
  425. newpath
  426. {
  427. x1 y1 rad add moveto
  428. x1 y2 x2 y2 rarc
  429. x2 y2 x2 y1 rarc
  430. x2 y1 x1 y1 rarc
  431. x1 y1 x1 y2 rarc
  432. closepath
  433. } stopped {x1 y1 x2 y2 R} if
  434. cleartomark
  435. } bind def
  436. /RRR {
  437. /rad exch def
  438. normalize /y4 exch def /x4 exch def
  439. normalize /y3 exch def /x3 exch def
  440. normalize /y2 exch def /x2 exch def
  441. normalize /y1 exch def /x1 exch def
  442. newpath
  443. normalize moveto
  444. mark
  445. {
  446. x2 y2 x3 y3 rarc
  447. x3 y3 x4 y4 rarc
  448. x4 y4 x1 y1 rarc
  449. x1 y1 x2 y2 rarc
  450. closepath
  451. } stopped
  452. {x1 y1 x2 y2 x3 y3 x4 y4 newpath moveto lineto lineto lineto closepath} if cleartomark
  453. } bind def
  454. /C {
  455. grestore
  456. gsave
  457. R
  458. clip
  459. setCurrentScreen
  460. } bind def
  461. /CP {
  462. grestore
  463. gsave
  464. Y
  465. clip
  466. setCurrentScreen
  467. } bind def
  468. /F {
  469. FMfonts exch get
  470. FMpointsize scalefont
  471. setfont
  472. } bind def
  473. /Q {
  474. /FMpointsize exch def
  475. F
  476. } bind def
  477. /T {
  478. moveto show
  479. } bind def
  480. /RF {
  481. rotate
  482. 0 ne {-1 1 scale} if
  483. } bind def
  484. /TF {
  485. gsave
  486. moveto
  487. RF
  488. show
  489. grestore
  490. } bind def
  491. /P {
  492. moveto
  493. 0 32 3 2 roll widthshow
  494. } bind def
  495. /PF {
  496. gsave
  497. moveto
  498. RF
  499. 0 32 3 2 roll widthshow
  500. grestore
  501. } bind def
  502. /S {
  503. moveto
  504. 0 exch ashow
  505. } bind def
  506. /SF {
  507. gsave
  508. moveto
  509. RF
  510. 0 exch ashow
  511. grestore
  512. } bind def
  513. /B {
  514. moveto
  515. 0 32 4 2 roll 0 exch awidthshow
  516. } bind def
  517. /BF {
  518. gsave
  519. moveto
  520. RF
  521. 0 32 4 2 roll 0 exch awidthshow
  522. grestore
  523. } bind def
  524. /G {
  525. gsave
  526. newpath
  527. normalize translate 0.0 0.0 moveto
  528. dnormalize scale
  529. 0.0 0.0 1.0 5 3 roll arc
  530. closepath
  531. PFill fill
  532. grestore
  533. } bind def
  534. /Gstrk {
  535. savematrix
  536. newpath
  537. 2 index 2 div add exch 3 index 2 div sub exch normalize 2 index 2 div sub exch 3 index 2 div add exch translate
  538. scale
  539. 0.0 0.0 1.0 5 3 roll arc
  540. restorematrix
  541. currentlinewidth exch setlinewidth PStroke setlinewidth } bind def
  542. /Gclip {
  543. newpath
  544. savematrix
  545. normalize translate 0.0 0.0 moveto
  546. dnormalize scale
  547. 0.0 0.0 1.0 5 3 roll arc
  548. closepath
  549. clip newpath
  550. restorematrix
  551. } bind def
  552. /GG {
  553. gsave
  554. newpath
  555. normalize translate 0.0 0.0 moveto
  556. rotate
  557. dnormalize scale
  558. 0.0 0.0 1.0 5 3 roll arc
  559. closepath
  560. PFill
  561. fill
  562. grestore
  563. } bind def
  564. /GGclip {
  565. savematrix
  566. newpath
  567. normalize translate 0.0 0.0 moveto
  568. rotate
  569. dnormalize scale
  570. 0.0 0.0 1.0 5 3 roll arc
  571. closepath
  572. clip newpath
  573. restorematrix
  574. } bind def
  575. /GGstrk {
  576. savematrix
  577. newpath
  578. normalize translate 0.0 0.0 moveto
  579. rotate
  580. dnormalize scale
  581. 0.0 0.0 1.0 5 3 roll arc
  582. closepath
  583. restorematrix