⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 heikkila97.ps

📁 OPENCV系列的
💻 PS
📖 第 1 页 / 共 5 页
字号:
%!PS-Adobe-3.0%%BoundingBox: (atend)%%Pages: (atend)%%PageOrder: (atend)%%DocumentFonts: (atend)%%Creator: Frame 5.1%%DocumentData: Clean7Bit%%EndComments%%BeginProlog%-%- Frame ps_prolog 5.0, for use with Frame 5.0 products%- This ps_prolog file is Copyright (c) 1986-1996 Adobe Systems, Incoporated.%- All rights reserved.  This ps_prolog file may be freely copied and %- distributed in conjunction with documents created using FrameMaker, %- FrameMaker/SGML FrameReader and FrameViewer as long as this %- copyright notice is preserved.%-%- FrameMaker users specify the proper paper size for each print job in the%- "Print" dialog's "Printer Paper Size" "Width" and "Height~ fields.  If the%- printer that the PS file is sent to does not support the requested paper%- size, or if there is no paper tray of the proper size currently installed, %- then the job will not be printed.  The following flag, if set to true, will%- cause the job to print on the default paper in such cases./FMAllowPaperSizeMismatch            false def%-%- Frame products normally print colors as their true color on a color printer%- or as shades of gray, based on luminance, on a black-and white printer. The%- following flag, if set to true, forces all non-white colors to print as pure%- black. This has no effect on bitmap images./FMPrintAllColorsAsBlack             false def%-%- Frame products can either set their own line screens or use a printer's %- default settings. Three flags below control this separately for no %- separations, spot separations and process separations. If a flag%- is true, then the default printer settings will not be changed. If it is%- false, Frame products will use their own settings from a table based on%- the printer's resolution./FMUseDefaultNoSeparationScreen      true  def/FMUseDefaultSpotSeparationScreen    true  def/FMUseDefaultProcessSeparationScreen false def%-%- For any given PostScript printer resolution, Frame products have two sets of %- screen angles and frequencies for printing process separations, which are %- recomended by Adobe. The following variable chooses the higher frequencies%- when set to true or the lower frequencies when set to false. This is only%- effective if the appropriate FMUseDefault...SeparationScreen flag is false./FMUseHighFrequencyScreens true def%-%- The following is a set of predefined optimal frequencies and angles for various%- common dpi settings. This is taken from "Advances in Color Separation Using%- PostScript Software Technology," from Adobe Systems (3/13/89 P.N. LPS 0043)%- and corrolated with information which is in various PPD (4.0) files.%-%- The "dpiranges" figure is the minimum dots per inch device resolution which%- can support this setting. The "low" and "high" values are controlled by the%- setting of the FMUseHighFrequencyScreens flag above. The "TDot" flags control%- the use of the "Yellow Triple Dot" feature whereby the frequency id divided by%- three, but the dot function is "trippled" giving a block of 3x3 dots per cell.%-%- PatFreq is a compromise pattern frequency for ps Level 2 printers which is close%- to the ideal WYSIWYG pattern frequency of 9 repetitions/inch but does not beat%- (too badly) against the screen frequencies of any separations for that DPI.% This is computed by taking dpi/9 as the ideal pixels per repetition, and then% computing a tiling size in printer pixels for each of the four separations as % (dpi/screenFreq)*(cos(screenAngle)+sin(screenAngle)) Actually, this is the same % for Cyan and Magenta). Then, we take a "nice" LCM of the tile sizes close to% the desired pattern tile where the beat factor is not more than 2 or 3.%/dpiranges   [  2540    2400    1693     1270    1200     635      600      0      ] def/CMLowFreqs  [ 100.402  94.8683 89.2289 100.402  94.8683  66.9349  63.2456 47.4342 ] def/YLowFreqs   [  95.25   90.0    84.65    95.25   90.0     70.5556  66.6667 50.0    ] def/KLowFreqs   [  89.8026 84.8528 79.8088  89.8026 84.8528  74.8355  70.7107 53.033  ] def/CLowAngles  [  71.5651 71.5651 71.5651 71.5651  71.5651  71.5651  71.5651 71.5651 ] def/MLowAngles  [  18.4349 18.4349 18.4349 18.4349  18.4349  18.4349  18.4349 18.4349 ] def/YLowTDot    [  true    true    false    true    true     false    false   false   ] def/CMHighFreqs [ 133.87  126.491 133.843  108.503 102.523  100.402   94.8683 63.2456 ] def/YHighFreqs  [ 127.0   120.0   126.975  115.455 109.091   95.25    90.0    60.0    ] def/KHighFreqs  [ 119.737 113.137 119.713  128.289 121.218   89.8026  84.8528 63.6395 ] def/CHighAngles [  71.5651 71.5651 71.5651  70.0169 70.0169  71.5651  71.5651 71.5651 ] def/MHighAngles [  18.4349 18.4349 18.4349  19.9831 19.9831  18.4349  18.4349 18.4349 ] def/YHighTDot   [  false   false   true     false   false    true     true    false   ] def/PatFreq     [	10.5833 10.0     9.4055  10.5833 10.0	  10.5833  10.0	   9.375   ] def%-%- PostScript Level 2 printers contain an "Accurate Screens" feature which can%- improve process separation rendering at the expense of compute time. This %- flag is ignored by PostScript Level 1 printers./FMUseAcccurateScreens true def%-%- The following PostScript procedure defines the spot function that Frame%- products will use for process separations. You may un-comment-out one of%- the alternative functions below, or use your own.%-%- Dot function/FMSpotFunction {abs exch abs 2 copy add 1 gt 		{1 sub dup mul exch 1 sub dup mul add 1 sub }		{dup mul exch dup mul add 1 exch sub }ifelse } def%-%- Line function%- /FMSpotFunction { pop } def%-%- Elipse function%- /FMSpotFunction { dup 5 mul 8 div mul exch dup mul exch add %-		sqrt 1 exch sub } def%-%-/FMversion (5.0) def % matches PS_VERSION in fmprintdriver% PostScript Level 1 = true, 2 = false/fMLevel1 /languagelevel where {pop languagelevel} {1} ifelse 2 lt def% Set up Color vs. Black-and-White/FMPColor	fMLevel1 {		false		/colorimage where {pop pop true} if	} {%		statusdict /processcolors known {%			statusdict /processcolors get exec%		} {1} ifelse%		1 gt		true	} ifelsedef/FrameDict 400 dict def % should check this value each time changes made%% For NeWS we add a fake errordict, so we can psh files%systemdict /errordict known not {/errordict 10 dict def		errordict /rangecheck {stop} put} if%- The readline in PS 23.0 doesn't recognize cr's as nl's on AppleTalkFrameDict /tmprangecheck errordict /rangecheck get put % save old rangecheckerrordict /rangecheck {FrameDict /bug true put} put % will flag bug foundFrameDict /bug false put % flag bug not foundmark % since we're not sure what will happen next%- Some PS machines read past the CR, so keep the following 3 lines together!currentfile 5 string readline000000000000cleartomark % junk from readline and rangecheckerrordict /rangecheck FrameDict /tmprangecheck get put % restore rangecheckFrameDict /bug get { % redefine readline if last one got a rangecheck	/readline {		/gstring exch def		/gfile exch def		/gindex 0 def		{			gfile read pop % get a char			dup 10 eq {exit} if % exit if LF			dup 13 eq {exit} if % exit if CR			gstring exch gindex exch put % store it away			/gindex gindex 1 add def % bump index		} loop		pop % eol character		gstring 0 gindex getinterval true % simulate real readline		} bind def	} if% outer-world defs/FMshowpage /showpage load def/FMquit /quit load def/FMFAILURE { % enter with two error strings on the stack	dup = flush % send a copy of the message to the console	FMshowpage % msg on a page by itself, so it can't be, say, black on black	/Helvetica findfont 12 scalefont setfont	72 200 moveto show	72 220 moveto show	FMshowpage % we might be in the middle of some EPS, where "showpage"	FMquit % and "quit" are redefined	} def % only used once at most, so no bind/FMVERSION {	FMversion ne {		(Adobe Frame product version does not match ps_prolog!  Check installation;)		(also check ~/fminit and ./fminit for old versions) FMFAILURE		} if	} def % only used at startup, so no bind/FMBADEPSF { % Call with bad operator name on stack (as a string)	(Adobe's PostScript Language Reference Manual, 2nd Edition, section H.2.4)	(says your EPS file is not valid, as it calls X              )	dup dup (X) search pop exch pop exch pop length % parmstr errstr errstr indx	5 -1 roll % errstr errstr index parmstr	putinterval % errstr	FMFAILURE	} def% standard concatprocs routine/fmConcatProcs	{	/proc2 exch cvlit def/proc1 exch cvlit def/newproc proc1 length proc2 length add array def	newproc 0 proc1 putinterval newproc proc1 length proc2 putinterval newproc cvx}def% Put all local variables here in alphabetical order.FrameDict begin [	/ALDsave	/FMdicttop	/FMoptop	/FMpointsize	/FMsaveobject	/b	/bitmapsave	/blut	/bpside	/bs	/bstring	/bwidth	/c	/cf	/cs	/cynu	/depth	/edown	/fh	/fillvals	/fw	/fx	/fy	/g	/gfile	/gindex	/grnt	/gryt	/gstring	/height	/hh	/i	/im	/indx	/is	/k	/kk	/landscape	/lb	/len	/llx	/lly	/m	/magu	/manualfeed	/n	/offbits	/onbits	/organgle	/orgbangle	/orgbfreq	/orgbproc	/orgbxfer	/orgfreq	/orggangle	/orggfreq	/orggproc	/orggxfer	/orgmatrix	/orgproc	/orgrangle	/orgrfreq	/orgrproc	/orgrxfer	/orgxfer	/pagesave	/paperheight	/papersizedict	/paperwidth	/pos	/pwid	/r	/rad	/redt	/sl	/str	/tran	/u	/urx	/ury	/val	/width	/width	/ws	/ww	/x	/x1	/x2	/xindex	/xpoint	/xscale	/xx	/y	/y1	/y2	/yelu	/yindex	/ypoint	/yscale	/yy] { 0 def } forall% Start of PDF/Acrobat support% Bind def/FmBD {bind def} bind defsystemdict /pdfmark known {	/fMAcrobat true def	% FmPD is a conditional PDFMark	/FmPD /pdfmark load def		% FmPT is a show text operator which only show up when distiller is active	/FmPT /show load def		% FmPD2 and FmPA are Acrobat 2.0-specific	currentdistillerparams /CoreDistVersion get 2000 ge {			% FmPD2 is like FmPD but for Acrobat 2.0-specific PDF		/FmPD2 /pdfmark load def				% x y/name FmPA		% 	is equivalent to		% [/Dest/name/View[/FitH x y FmDC exch pop]/DEST FmPD		% It is a shortcut for pagragraph Uinique ID designators whic occurr commonly.		/FmPA { mark exch /Dest exch 5 3 roll 				/View [ /XYZ null 6 -2 roll FmDC exch pop null] /DEST FmPD 		}FmBD	} {		% These are No-Ops for Distiller 1.0		/FmPD2 /cleartomark load def		/FmPA {pop pop pop}FmBD	} ifelse} {	% these are the No-Ops for regular PostScript	/fMAcrobat false def	/FmPD /cleartomark load def	/FmPD2 /cleartomark load def	/FmPT /pop load def	/FmPA {pop pop pop}FmBD} ifelse% This convert a set of X Y coordinates from the current user space to the default% PostScript coordinates needed by some pdfmark variants. We also convert to % integer because the distiller doesn't always like floats!/FmDC {	transform fMDefaultMatrix itransform cvi exch cvi exch}FmBD% This converts four numbers into a bounding box making sure the first two are maller than the last two/FmBx {	dup 3 index lt {3 1 roll exch} if 	1 index 4 index lt {4 -1 roll 3 1 roll exch 4 1 roll} if}FmBD% End of PDF/Acrobat support%% Color separation code%% Constants./FMnone 0 def/FMcyan 1 def/FMmagenta 2 def/FMyellow 3 def/FMblack 4 def/FMcustom 5 def/fMNegative false def % we are inverting the page% Variables./FrameSepIs FMnone def % separation we are printing% If FrameSepIs is FMcustom, this is the custom color/FrameSepBlack 0 def/FrameSepYellow 0 def/FrameSepMagenta 0 def/FrameSepCyan 0 def/FrameSepRed 1 def/FrameSepGreen 1 def/FrameSepBlue 1 def/FrameCurGray 1 def/FrameCurPat null def/FrameCurColors [ 0 0 0 1 0 0 0 ] def % c m y k r g b% Utility routines/FrameColorEpsilon .001 def	% epsilon by which values can differ and sill be equal/eqepsilon {		% v1 v2 eqeps bool	sub dup 0 lt {neg} if	FrameColorEpsilon le} bind def% are the cmyk and cmykrgb arrays on the stack the same color?/FrameCmpColorsCMYK { % [ c1 m1 y1 k1 ] [ c2 m2 y2 k2 r2 g2 b2] -> bool	2 copy 0 get exch 0 get eqepsilon {		2 copy 1 get exch 1 get eqepsilon {			2 copy 2 get exch 2 get eqepsilon {				3 get exch 3 get eqepsilon			} {pop pop false} ifelse		}{pop pop false} ifelse	} {pop pop false} ifelse} bind def% are the rgb and cmykrgb arrays on the stack the same color?/FrameCmpColorsRGB { % [ r1 g1 b1 ] [ c2 m2 y2 k2 r2 g2 b2] -> bool	2 copy 4 get exch 0 get eqepsilon {		2 copy 5 get exch 1 get eqepsilon {			6 get exch 2 get eqepsilon		}{pop pop false} ifelse	} {pop pop false} ifelse} bind def% convert r g b to c m y k/RGBtoCMYK { % r g b	1 exch sub % r g y	3 1 roll % y r g	1 exch sub % y r m	3 1 roll % m y r	1 exch sub % m y c	3 1 roll % c m y	3 copy % c m y c m y	2 copy % c m y c m y m y	le { pop } { exch pop } ifelse % c m y c min(m,y)	2 copy % c m y c min(m,y) c min(m,y)	le { pop } { exch pop } ifelse % c m y min(c, min(m,y))	dup dup dup % c m y k k k k	6 1 roll % c k m y k k k	4 1 roll % c k m k y k k	7 1 roll % k c k m k y k	sub % k c k m k y	6 1 roll % y k c k m k	sub % y k c k m	5 1 roll % m y k c k	sub % m y k c	4 1 roll % c m y k } bind def/CMYKtoRGB { % c m y k CMYKtoRGB r g b	dup dup 4 -1 roll add 						  % c m k k y+k	5 1 roll 3 -1 roll add 						  % y+k c k m+k	4 1 roll add 								  % m+k y+k c+k	1 exch sub dup 0 lt {pop 0} if 3 1 roll 	  % r m+k y+k	1 exch sub dup 0 lt {pop 0} if exch 	      % r b m+k	1 exch sub dup 0 lt {pop 0} if exch	  		  % r g b} bind def% Public routines

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -