📄 if_practical.ps
字号:
%!PS-Adobe-2.0%%Creator: dvips(k) 5.95b Copyright 2005 Radical Eye Software%%Title: if_practical.dvi%%Pages: 8%%PageOrder: Ascend%%BoundingBox: 0 0 596 842%%DocumentFonts: Times-Bold Times-Roman Courier CMMI12 CMMI8 CMR12%%+ Helvetica CMBX12 Times-Italic CMSY10 CMSY8%%DocumentPaperSizes: a4%%EndComments%DVIPSWebPage: (www.radicaleye.com)%DVIPSCommandLine: dvips -j0 -Ppdf -t a4 -D 1200 -Z -o if_practical.ps%+ if_practical.dvi%DVIPSParameters: dpi=1200, compressed%DVIPSSource: TeX output 2006.08.22:2327%%BeginProcSet: tex.pro 0 0%!/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{SN}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 00 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsizemul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall roundexch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat Ndf-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn Adefinefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr1 add N}if}B/CharBuilder{save 3 1 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx 0 Cx Cy Ch sub Cx Cw add Cysetcachedevice Cw Ch true[1 0 0 -1 -.1 Cx sub Cy .1 sub]{Ci}imagemaskrestore}B/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get Amul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)(LaserWriter 16/600)]{A length product length le{A length product exch 0exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelseend{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemaskgrestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}imagemask grestore}}ifelse B/QV{gsave newpath transform round exch roundexch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlinetofill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S pdelta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 Srmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end%%EndProcSet%%BeginProcSet: alt-rule.pro 0 0%!% Patch by TVZ% Makes dvips files draw rules with stroke rather than fill.% Makes narrow rules more predictable at low resolutions% after distilling to PDF.% May have unknown consequences for very thick rules.% Tested only with dvips 5.85(k).TeXDict begin/QV { gsave newpath /ruleY X /ruleX X Rx Ry gt { ruleX ruleY Ry 2 div sub moveto Rx 0 rlineto Ry } { ruleX Rx 2 div add ruleY moveto 0 Ry neg rlineto Rx } ifelse setlinewidth 0 setlinecap stroke grestore} bind defend%%EndProcSet%%BeginProcSet: texc.pro 0 0%!/TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{SN}B/A{dup}B/TR{translate}N/isls false N/vsize 11 72 mul N/hsize 8.5 72mul N/landplus90{false}def/@rigin{isls{[0 landplus90{1 -1}{-1 1}ifelse 00 0]concat}if 72 Resolution div 72 VResolution div neg scale isls{landplus90{VResolution 72 div vsize mul 0 exch}{Resolution -72 div hsizemul 0}ifelse TR}if Resolution VResolution vsize -72 div 1 add mul TR[matrix currentmatrix{A A round sub abs 0.00001 lt{round}if}forall roundexch round exch]setmatrix}N/@landscape{/isls true N}B/@manualfeed{statusdict/manualfeed true put}B/@copies{/#copies X}B/FMat[1 0 0 -1 0 0]N/FBB[0 0 0 0]N/nn 0 N/IEn 0 N/ctr 0 N/df-tail{/nn 8 dict N nn begin/FontType 3 N/FontMatrix fntrx N/FontBBox FBB N string/base X array/BitMaps X/BuildChar{CharBuilder}N/Encoding IEn N end A{/foo setfont}2array copy cvx N load 0 nn put/ctr 0 N[}B/sf 0 N/df{/sf 1 N/fntrx FMat Ndf-tail}B/dfs{div/sf X/fntrx[sf 0 0 sf neg 0 0]N df-tail}B/E{pop nn Adefinefont setfont}B/Cw{Cd A length 5 sub get}B/Ch{Cd A length 4 sub get}B/Cx{128 Cd A length 3 sub get sub}B/Cy{Cd A length 2 sub get 127 sub}B/Cdx{Cd A length 1 sub get}B/Ci{Cd A type/stringtype ne{ctr get/ctr ctr1 add N}if}B/id 0 N/rw 0 N/rc 0 N/gp 0 N/cp 0 N/G 0 N/CharBuilder{save 31 roll S A/base get 2 index get S/BitMaps get S get/Cd X pop/ctr 0 N Cdx0 Cx Cy Ch sub Cx Cw add Cy setcachedevice Cw Ch true[1 0 0 -1 -.1 Cxsub Cy .1 sub]/id Ci N/rw Cw 7 add 8 idiv string N/rc 0 N/gp 0 N/cp 0 N{rc 0 ne{rc 1 sub/rc X rw}{G}ifelse}imagemask restore}B/G{{id gp get/gpgp 1 add N A 18 mod S 18 idiv pl S get exec}loop}B/adv{cp add/cp X}B/chg{rw cp id gp 4 index getinterval putinterval A gp add/gp X adv}B/nd{/cp 0 N rw exit}B/lsh{rw cp 2 copy get A 0 eq{pop 1}{A 255 eq{pop 254}{A A add 255 and S 1 and or}ifelse}ifelse put 1 adv}B/rsh{rw cp 2 copyget A 0 eq{pop 128}{A 255 eq{pop 127}{A 2 idiv S 128 and or}ifelse}ifelse put 1 adv}B/clr{rw cp 2 index string putinterval adv}B/set{rw cpfillstr 0 4 index getinterval putinterval adv}B/fillstr 18 string 0 1 17{2 copy 255 put pop}for N/pl[{adv 1 chg}{adv 1 chg nd}{1 add chg}{1 addchg nd}{adv lsh}{adv lsh nd}{adv rsh}{adv rsh nd}{1 add adv}{/rc X nd}{1 add set}{1 add clr}{adv 2 chg}{adv 2 chg nd}{pop nd}]A{bind pop}forall N/D{/cc X A type/stringtype ne{]}if nn/base get cc ctr put nn/BitMaps get S ctr S sf 1 ne{A A length 1 sub A 2 index S get sf div put}if put/ctr ctr 1 add N}B/I{cc 1 add D}B/bop{userdict/bop-hook known{bop-hook}if/SI save N @rigin 0 0 moveto/V matrix currentmatrix A 1 get Amul exch 0 get A mul add .99 lt{/QV}{/RV}ifelse load def pop pop}N/eop{SI restore userdict/eop-hook known{eop-hook}if showpage}N/@start{userdict/start-hook known{start-hook}if pop/VResolution X/Resolution X1000 div/DVImag X/IEn 256 array N 2 string 0 1 255{IEn S A 360 add 36 4index cvrs cvn put}for pop 65781.76 div/vsize X 65781.76 div/hsize X}N/p{show}N/RMat[1 0 0 -1 0 0]N/BDot 260 string N/Rx 0 N/Ry 0 N/V{}B/RV/v{/Ry X/Rx X V}B statusdict begin/product where{pop false[(Display)(NeXT)(LaserWriter 16/600)]{A length product length le{A length product exch 0exch getinterval eq{pop true exit}if}{pop}ifelse}forall}{false}ifelseend{{gsave TR -.1 .1 TR 1 1 scale Rx Ry false RMat{BDot}imagemaskgrestore}}{{gsave TR -.1 .1 TR Rx Ry scale 1 1 false RMat{BDot}imagemask grestore}}ifelse B/QV{gsave newpath transform round exch roundexch itransform moveto Rx 0 rlineto 0 Ry neg rlineto Rx neg 0 rlinetofill grestore}B/a{moveto}B/delta 0 N/tail{A/delta X 0 rmoveto}B/M{S pdelta add tail}B/b{S p tail}B/c{-4 M}B/d{-3 M}B/e{-2 M}B/f{-1 M}B/g{0 M}B/h{1 M}B/i{2 M}B/j{3 M}B/k{4 M}B/w{0 rmoveto}B/l{p -4 w}B/m{p -3 w}B/n{p -2 w}B/o{p -1 w}B/q{p 1 w}B/r{p 2 w}B/s{p 3 w}B/t{p 4 w}B/x{0 Srmoveto}B/y{3 2 roll p a}B/bos{/SS save N}B/eos{SS restore}B end%%EndProcSet%%BeginProcSet: psfrag.pro 0 0%%%% This is file `psfrag.pro',%% generated with the docstrip utility.%%%% The original source files were:%%%% psfrag.dtx (with options: `filepro')%% %% Copyright (c) 1996 Craig Barratt, Michael C. Grant, and David Carlisle.%% All rights reserved.%% %% This file is part of the PSfrag package.%% userdict begin/PSfragLib 90 dict def/PSfragDict 6 dict def/PSfrag { PSfragLib begin load exec end } bind defendPSfragLib begin/RO /readonly load def/CP /currentpoint load def/CM /currentmatrix load def/B { bind RO def } bind def/X { exch def } B/MD { { X } forall } B/OE { end exec PSfragLib begin } B/S false def/tstr 8 string def/islev2 { languagelevel } stopped { false } { 2 ge } ifelse def[ /sM /tM /srcM /dstM /dM /idM /srcFM /dstFM ] { matrix def } forallsM currentmatrix RO popdM defaultmatrix RO idM invertmatrix RO popsrcFM identmatrix pop/Hide { gsave { CP } stopped not newpath clip { moveto } if } B/Unhide { { CP } stopped not grestore { moveto } if } B/setrepl islev2 {{ /glob currentglobal def true setglobal array astore globaldict exch /PSfrags exch put glob setglobal }} {{ array astore /PSfrags X }} ifelse B/getrepl islev2 {{ globaldict /PSfrags get aload length }} {{ PSfrags aload length }} ifelse B/convert { /src X src length string /c 0 def src length { dup c src c get dup 32 lt { pop 32 } if put /c c 1 add def } repeat} B/Begin { /saver save def srcFM exch 3 exch put 0 ne /debugMode X 0 setrepl dup /S exch dict def { S 3 1 roll exch convert exch put } repeat srcM CM dup invertmatrix pop mark { currentdict { end } stopped { pop exit } if } loop PSfragDict counttomark { begin } repeat pop} B/End { mark { currentdict end dup PSfragDict eq { pop exit } if } loop counttomark { begin } repeat pop getrepl saver restore 7 idiv dup /S exch dict def { 6 array astore /mtrx X tstr cvs /K X S K [ S K known { S K get aload pop } if mtrx ] put } repeat} B/Place { tstr cvs /K X S K known { bind /proc X tM CM pop CP /cY X /cX X 0 0 transform idtransform neg /aY X neg /aX X S K get dup length /maxiter X /iter 1 def { iter maxiter ne { /saver save def } if tM setmatrix aX aY translate [ exch aload pop idtransform ] concat cX neg cY neg translate cX cY moveto /proc load OE iter maxiter ne { saver restore /iter iter 1 add def } if } forall /noXY { CP /cY X /cX X } stopped def tM setmatrix noXY { newpath } { cX cY moveto } ifelse } { Hide OE Unhide } ifelse} B/normalize { 2 index dup mul 2 index dup mul add sqrt div dup 4 -1 roll exch mul 3 1 roll mul} B/replace { aload pop MD CP /bY X /lX X gsave sM setmatrix str stringwidth abs exch abs add dup 0 eq { pop } { 360 exch div dup scale } ifelse lX neg bY neg translate newpath lX bY moveto str { /ch X ( ) dup 0 ch put false charpath ch Kproc } forall flattenpath pathbbox [ /uY /uX /lY /lX ] MD CP grestore moveto currentfont /FontMatrix get dstFM copy dup 0 get 0 lt { uX lX /uX X /lX X } if 3 get 0 lt { uY lY /uY X /lY X } if /cX uX lX add 0.5 mul def
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -