📄 rfc1276.ps
字号:
/rl % dx dy rl - -- draw relative line
{ rlineto
} def
/rc % x0 y0 x1 y1 y2 y2 rc -- draw bezier curve
{ rcurveto
} def
/np % np - -- start a new path and save currenpoint
{ /SaveX currentpoint /SaveY exch def def % remember current point
newpath
} def
/st % st - -- draw the last path and restore currentpoint
{ stroke
SaveX SaveY moveto % restore the current point
} def
/f % f -- fill the last path and restore currentpoint
{ fill
SaveX SaveY moveto % restore the current point
} def
/ellipse % xc yc xrad yrad startAngle endAngle ellipse
{
/endangle exch def
/startangle exch def
/yrad exch def
/xrad exch def
/y exch def
/x exch def
/savematrix matrix currentmatrix def
x y translate
xrad yrad scale
0 0 1 startangle endangle arc
savematrix setmatrix
} def
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% the \special command junk
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% The structure of the PostScript produced by dvi2ps for \special is:
% @beginspecial
% - any number of @hsize, @hoffset, @hscale, etc., commands
% @setspecial
% - the users file of PostScript commands
% @endspecial
% The @beginspecial command recognizes whether the Macintosh Laserprep
% has been loaded or not, and redfines some Mac commands if so.
%%% NOTE: This has been disabled as we don't use it !!
% The @setspecial handles the users shifting, scaling, clipping commands
% The following are user settable options from the \special command.
/@SpecialDefaults
{ /hs 8.5 Inch def
/vs 11.68 Inch def
/ho 0 def
/vo 0 def
/hsc 1 def
/vsc 1 def
/CLIP false def
} def
% d @hsize - specify a horizontal clipping dimension
% these 2 are executed before the MacDraw initializations
/@hsize {/hs exch def /CLIP true def} def
/@vsize {/vs exch def /CLIP true def} def
% d @hoffset - specify a shift for the drwgs
/@hoffset {/ho exch def} def
/@voffset {/vo exch def} def
% s @hscale - set scale factor
/@hscale {/hsc exch def} def
/@vscale {/vsc exch def} def
/@setclipper
{ hsc vsc scale
CLIP
{ newpath 0 0 moveto hs 0 rlineto 0 vs rlineto hs neg 0 rlineto closepath clip }
if
} def
% this will be invoked as the result of a \special command (for the
% inclusion of PostScript graphics). The basic idea is to change all
% scaling and graphics back to defaults, but to shift the origin
% to the current position on the page. Due to TeXnical difficulties,
% we only set the y-origin. The x-origin is set at the left edge of
% the page.
/@beginspecial % - @beginspecial - -- enter special mode
{ gsave /SpecialSave save def
% the following magic incantation establishes the current point as
% the users origin, and reverts back to default scalings, rotations
currentpoint transform initgraphics itransform translate
@SpecialDefaults % setup default offsets, scales, sizes
%%% @MacSetUp % fix up Mac stuff -- DISABLED
/showpage {} def %%% Ignore showpage commands
} def
/@setspecial % to setup user specified offsets, scales, sizes (for clipping)
{
MacDrwgs
{md begin /pxt ho def /pyt vo neg def end}
{ho vo translate @setclipper}
ifelse
} def
/@endspecial % - @endspecial - -- leave special mode
{ SpecialSave restore
grestore
} def
%!
% All software, documentation, and related files in this distribution of
% psfig/tex are Copyright (c) 1987 Trevor J. Darrell
%
% Permission is granted for use and non-profit distribution of psfig/tex
% providing that this notice be clearly maintained, but the right to
% distribute any portion of psfig/tex for profit or as part of any commercial
% product is specifically reserved for the author.
%
%
% psfigTeX PostScript Prolog
% $Header: tex.ps,v 1.13 87/12/14 00:57:00 van Exp $
%
/psf$TeXscale { 65536 div } def
/DocumentInitState [ matrix currentmatrix currentlinewidth currentlinecap
currentlinejoin currentdash currentgray currentmiterlimit ] cvx def
% x y bb-llx bb-lly bb-urx bb-ury startFig -
/startTexFig {
/psf$SavedState save def
userdict maxlength dict begin
currentpoint transform
DocumentInitState setmiterlimit setgray setdash setlinejoin setlinecap
setlinewidth setmatrix
itransform moveto
/psf$ury exch psf$TeXscale def
/psf$urx exch psf$TeXscale def
/psf$lly exch psf$TeXscale def
/psf$llx exch psf$TeXscale def
/psf$y exch psf$TeXscale def
/psf$x exch psf$TeXscale def
currentpoint /psf$cy exch def /psf$cx exch def
/psf$sx psf$x psf$urx psf$llx sub div def % scaling for x
/psf$sy psf$y psf$ury psf$lly sub div def % scaling for y
psf$sx psf$sy scale % scale by (sx,sy)
psf$cx psf$sx div psf$llx sub
psf$cy psf$sy div psf$ury sub translate
/DefFigCTM matrix currentmatrix def
/initmatrix {
DefFigCTM setmatrix
} def
/defaultmatrix {
DefFigCTM exch copy
} def
/initgraphics {
DocumentInitState setmiterlimit setgray setdash
setlinejoin setlinecap setlinewidth setmatrix
DefFigCTM setmatrix
} def
/showpage {
initgraphics
} def
@MacSetUp
} def
% llx lly urx ury doclip - (args in figure coordinates)
/doclip {
currentpoint 6 2 roll
newpath 4 copy
4 2 roll moveto
6 -1 roll exch lineto
exch lineto
exch lineto
closepath clip
newpath
moveto
} def
% - endTexFig -
/endTexFig { end psf$SavedState restore } def
%%%% Additions by LA Carr to reencode Adobe fonts as TeX fonts (almost)
%%%% Based on routine in LaserWriter Cookbook
/ReEncodeForTeX
{ /newfontname exch def
/basefontname exch def
/TeXstr 30 string def
/basefontdict basefontname findfont def
/newfont basefontdict maxlength dict def
basefontdict
{ exch dup /FID ne
{ dup /Encoding eq
{ exch dup length array copy
newfont 3 1 roll put }
{ exch newfont 3 1 roll put }
ifelse
}
{ pop pop }
ifelse
} forall
%% newfont /FontName newfontname put %%
basefontname TeXstr cvs (Dingbat) search
{ pop pop pop }
{ pop
/TeXvec basefontname TeXstr cvs (Courier) search
{ pop pop pop TeXcourvec }
{ pop TeXnormalvec }
ifelse def
TeXvec aload pop
TeXvec length 2 idiv
{ newfont /Encoding get 3 1 roll put }
repeat
}
ifelse
newfontname newfont definefont pop
} def
/TeXnormalvec
[ 8#014 /fi 8#015 /fl 8#020 /dotlessi 8#022 /grave 8#023 /acute
8#024 /caron 8#025 /breve 8#026 /macron 8#027 /ring 8#030 /cedilla
8#031 /germandbls 8#032 /ae 8#033 /oe 8#034 /oslash 8#035 /AE
8#036 /OE 8#037 /Oslash 8#042 /quotedblright 8#074 /exclamdown
8#076 /questiondown 8#134 /quotedblleft 8#136 /circumflex
8#137 /dotaccent 8#173 /endash 8#174 /emdash 8#175 /quotedbl
8#177 /dieresis ] def
/TeXcourvec
[ 8#016 /exclamdown 8#017 /questiondown 8#020 /dotlessi 8#022 /grave
8#023 /acute 8#024 /caron 8#025 /breve 8#026 /macron 8#027 /ring
8#030 /cedilla 8#031 /germandbls 8#032 /ae 8#033 /oe 8#034 /oslash
8#035 /AE 8#036 /OE 8#037 /Oslash 8#074 /less 8#076 /greater
8#134 /backslash 8#136 /circumflex 8#137 /underscore 8#173 /braceleft
8#174 /bar 8#175 /braceright 8#177 /dieresis ] def
/TeXPSmakefont { % defines a routine for generating PS fonts, fudged!
/TeXsize exch def
findfont
[ TeXsize 0 0 TeXsize neg 0 0 ] makefont
} def
%Create a General Oblique font
/ObliqueFont {
/ObliqueAngle exch def
/ObliqueBaseName exch def
/ObliqueFontName exch def
/ObliqueTransform [1 0 ObliqueAngle sin ObliqueAngle cos div 1 0 0] def
/basefontdict ObliqueBaseName findfont ObliqueTransform makefont def
/newfont basefontdict maxlength dict def
basefontdict
{ exch dup /FID ne
{ dup /Encoding eq
{ exch dup length array copy
newfont 3 1 roll put }
{ exch newfont 3 1 roll put }
ifelse
}
{ pop pop }
ifelse
} forall
newfont /FontName ObliqueFontName put
ObliqueFontName newfont definefont
pop
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -