├── .gitignore ├── README.md ├── epslatex-cn.pdf └── src ├── epslatex-cn.tex ├── images ├── captiondef.pdf ├── golfer.pdf ├── golfer.ps ├── graphic.eps ├── graphic2.pdf ├── illusion.eps ├── latex-box.pdf ├── left.eps ├── left.pdf ├── leftright.pdf ├── leftright.tex ├── mass.pdf ├── orig-point.eps ├── orig-point.pdf ├── pend.eps ├── pend.pdf ├── psfrag-ex1.pdf ├── psfrag-ex2.pdf ├── psfrag-ex3.pdf ├── recycle.pdf ├── right.eps ├── right.pdf ├── rosette.eps ├── rosette.pdf ├── rosette.ps ├── rosettebox.eps ├── rosettebox.pdf ├── rotat-box.pdf ├── tiger.eps ├── tux-black.eps ├── tux-color.pdf ├── w.eps ├── w.pdf ├── wide.eps └── wide.pdf ├── makefiles.bat ├── part1.tex ├── part2.tex ├── part3.tex ├── part4.tex ├── part5.tex ├── preface.tex ├── ref.bib └── title.tex /.gitignore: -------------------------------------------------------------------------------- 1 | ## Repository Related Files: 2 | ref/* 3 | src/*.pdf 4 | src/*.exe 5 | 6 | ## Core latex/pdflatex auxiliary files: 7 | *.aux 8 | *.lof 9 | *.log 10 | *.lot 11 | *.fls 12 | *.out 13 | *.toc 14 | *.fmt 15 | *.fot 16 | *.cb 17 | *.cb2 18 | 19 | ## Intermediate documents: 20 | *.dvi 21 | *-converted-to.* 22 | # these rules might exclude image files for figures etc. 23 | # *.ps 24 | # *.eps 25 | # *.pdf 26 | 27 | ## Bibliography auxiliary files (bibtex/biblatex/biber): 28 | *.bbl 29 | *.bcf 30 | *.blg 31 | *-blx.aux 32 | *-blx.bib 33 | *.brf 34 | *.run.xml 35 | 36 | ## Build tool auxiliary files: 37 | *.fdb_latexmk 38 | *.synctex 39 | *.synctex.gz 40 | *.synctex.gz(busy) 41 | *.pdfsync 42 | 43 | ## Auxiliary and intermediate files from other packages: 44 | # algorithms 45 | *.alg 46 | *.loa 47 | 48 | # achemso 49 | acs-*.bib 50 | 51 | # amsthm 52 | *.thm 53 | 54 | # beamer 55 | *.nav 56 | *.snm 57 | *.vrb 58 | 59 | # cprotect 60 | *.cpt 61 | 62 | # fixme 63 | *.lox 64 | 65 | #(r)(e)ledmac/(r)(e)ledpar 66 | *.end 67 | *.?end 68 | *.[1-9] 69 | *.[1-9][0-9] 70 | *.[1-9][0-9][0-9] 71 | *.[1-9]R 72 | *.[1-9][0-9]R 73 | *.[1-9][0-9][0-9]R 74 | *.eledsec[1-9] 75 | *.eledsec[1-9]R 76 | *.eledsec[1-9][0-9] 77 | *.eledsec[1-9][0-9]R 78 | *.eledsec[1-9][0-9][0-9] 79 | *.eledsec[1-9][0-9][0-9]R 80 | 81 | # glossaries 82 | *.acn 83 | *.acr 84 | *.glg 85 | *.glo 86 | *.gls 87 | *.glsdefs 88 | 89 | # gnuplottex 90 | *-gnuplottex-* 91 | 92 | # hyperref 93 | *.brf 94 | 95 | # knitr 96 | *-concordance.tex 97 | # TODO Comment the next line if you want to keep your tikz graphics files 98 | *.tikz 99 | *-tikzDictionary 100 | 101 | # listings 102 | *.lol 103 | 104 | # makeidx 105 | *.idx 106 | *.ilg 107 | *.ind 108 | *.ist 109 | 110 | # minitoc 111 | *.maf 112 | *.mlf 113 | *.mlt 114 | *.mtc 115 | *.mtc[0-9] 116 | *.mtc[1-9][0-9] 117 | 118 | # minted 119 | _minted* 120 | *.pyg 121 | 122 | # morewrites 123 | *.mw 124 | 125 | # mylatexformat 126 | *.fmt 127 | 128 | # nomencl 129 | *.nlo 130 | 131 | # sagetex 132 | *.sagetex.sage 133 | *.sagetex.py 134 | *.sagetex.scmd 135 | 136 | # sympy 137 | *.sout 138 | *.sympy 139 | sympy-plots-for-*.tex/ 140 | 141 | # pdfcomment 142 | *.upa 143 | *.upb 144 | 145 | # pythontex 146 | *.pytxcode 147 | pythontex-files-*/ 148 | 149 | # thmtools 150 | *.loe 151 | 152 | # TikZ & PGF 153 | *.dpth 154 | *.md5 155 | *.auxlock 156 | 157 | # todonotes 158 | *.tdo 159 | 160 | # xindy 161 | *.xdy 162 | 163 | # xypic precompiled matrices 164 | *.xyc 165 | 166 | # endfloat 167 | *.ttt 168 | *.fff 169 | 170 | # Latexian 171 | TSWLatexianTemp* 172 | 173 | ## Editors: 174 | # WinEdt 175 | *.bak 176 | *.sav 177 | 178 | # Texpad 179 | .texpadtmp 180 | 181 | # Kile 182 | *.backup 183 | 184 | # KBibTeX 185 | *~[0-9]* 186 | 187 | # system 188 | .DS_Store 189 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # LaTeX2e 插图指南, 第三版 2 | 3 | ## 简介 4 | [Using Imported Graphics in LaTeX and pdfLaTeX](http://mirrors.ctan.org/info/epslatex/english/epslatex.pdf) 中译本 5 | 6 | ## 编译方式 7 | ### 编译依赖 8 | 9 | - 较新版本的 TeX 发行版本,例如 TeXLive 2016+ 10 | - `zhmakeindex`, 见 https://github.com/leo-liu/zhmakeindex 以及 http://mirror.ctan.org/tex-archive/indexing/zhmakeindex/ 11 | 12 | ### 编译过程 13 | 14 | - 将 `zhmakeindex` 加入环境变量或放置于 `src/` 目录 15 | - 运行 `src/makefiles.bat` 进行编译(在 Windows 系统中双击运行,在 \*nix 系统中在终端运行),即,依次执行以下命令: 16 | 17 | ``` 18 | xelatex -synctex=1 -interaction=nonstopmode --shell-escape -output-directory .. epslatex-cn 19 | biber ../epslatex-cn 20 | zhmakeindex ../epslatex-cn 21 | xelatex -synctex=1 -interaction=nonstopmode --shell-escape -output-directory .. epslatex-cn 22 | ``` 23 | 24 | ## 许可协议 25 | 本文档以及源代码以 LPPL 协议发布([LaTeX Project Public License](http://www.latex-project.org/lppl/),v1.3c) 26 | -------------------------------------------------------------------------------- /epslatex-cn.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/epslatex-cn.pdf -------------------------------------------------------------------------------- /src/epslatex-cn.tex: -------------------------------------------------------------------------------- 1 | % epslatex-cn 2 | 3 | \documentclass[oneside,UTF8]{ctexart} 4 | \usepackage{amsmath} 5 | \usepackage{nicefrac} 6 | \usepackage{lmodern} 7 | \usepackage{textcomp} 8 | \usepackage[style=numeric,sorting=nty]{biblatex} 9 | \usepackage{geometry} 10 | \usepackage{etoolbox} 11 | \usepackage{cprotect} 12 | \usepackage{environ} 13 | \usepackage[nottoc,section]{tocbibind} 14 | \usepackage{etoolbox} 15 | 16 | \usepackage{placeins} 17 | \usepackage{fancybox} 18 | \usepackage[cymk,rgb]{xcolor} 19 | \usepackage{lscape} 20 | \usepackage{caption} 21 | \usepackage{subcaption} 22 | \usepackage{sidecap} 23 | \usepackage{rotating} 24 | \usepackage{wrapfig} 25 | \usepackage{picinpar} 26 | \usepackage{psfrag} 27 | \usepackage{overpic} 28 | \usepackage{eso-pic} 29 | 30 | \usepackage{fancyvrb} 31 | \usepackage{verbatim} 32 | \usepackage{listings} 33 | \usepackage{makeidx} 34 | \usepackage{hologo} 35 | \usepackage{array,booktabs} 36 | \usepackage[nopagecolor=white]{pagecolor} 37 | \usepackage{afterpage} 38 | \usepackage{hyperref} 39 | 40 | % settings 41 | \geometry{a4paper,includemp,reversemp,left=0.9in,right=0.85in,top=1in,bottom=1in,% 42 | marginparwidth=50pt} 43 | 44 | \let\marginpartemp=\marginpar 45 | \renewcommand{\marginpar}[1]{\reversemarginpar\marginpartemp{\raggedright\CJKfamily{zhkai} #1}} 46 | 47 | \defbibheading{mybibintoc}[\refname]{% 48 | \section*{#1}% 49 | \phantomsection% 50 | \addcontentsline{toc}{section}{#1}% 51 | \label{references} 52 | \markboth{\MakeUppercase{#1}}{\MakeUppercase{#1}} 53 | \thispagestyle{plain}} 54 | %\renewcommand{\marinpar}[1]{\reversemarginpar\marginpartemp{\CJKfamily{zhkai}#1}} 55 | \graphicspath{{images/}} 56 | \def\pdfTeX{\hologo{pdfTeX}} 57 | \def\pdfLaTeX{\hologo{pdfLaTeX}} 58 | \def\XeTeX{\hologo{XeTeX}} 59 | \def\LuaTeX{\hologo{LuaTeX}} 60 | \def\HanTheThanh{\hologo{HanTheThanh}} 61 | \def\MetaFont{\hologo{METAFONT}} 62 | \def\MetaPost{\hologo{METAPOST}} 63 | 64 | \lstset{ 65 | basicstyle=\ttfamily\small\color{VerbatimColor}, 66 | commentstyle=\ttfamily\slshape, 67 | language=[LaTeX]{TeX}, 68 | tabsize=4, 69 | xleftmargin=1em} 70 | \NewEnviron{fixedfigure}[1]{% 71 | \noindent\begin{minipage}{#1}% 72 | \vspace{\intextsep} 73 | \captionsetup{type=figure}% 74 | \BODY% 75 | \end{minipage}} 76 | \NewEnviron{fixedtable}[1]{% 77 | \noindent\begin{minipage}{#1}% 78 | \vspace{\intextsep} 79 | \captionsetup{type=table}% 80 | \BODY% 81 | \end{minipage}} 82 | 83 | \newcommand{\file}[1]{\texttt{#1}} 84 | \newcommand{\prgname}[1]{\textsf{#1}} 85 | \newcommand{\pkg}[1]{\texttt{#1}} 86 | \newcommand{\env}[1]{\texttt{#1}} 87 | \newcommand{\cmd}[1]{{\textcolor{blue}{\texttt{\char`\\#1}}}} % \foo 88 | \newcommand{\cmdM}[2]{\cmd{#1}\texttt{\{#2\}}} % \foo{bar} 89 | \newcommand{\cmdO}[2]{\cmd{#1}\texttt{[#2]}} % \foo[bar] 90 | \newcommand{\cmdMM}[3]{\cmd{#1}\texttt{\{#2\}\{#3\}}} % \foo{bar1}{bar2} 91 | \newcommand{\cmdOM}[3]{\cmd{#1}\texttt{[#2]\{#3\}}} % \foo[bar1]{bar2} 92 | \newcommand{\cmdMO}[3]{\cmd{#1}\texttt{\{#2\}[#3]}} 93 | \newcommand{\cmdOOM}[4]{\cmd{#1}\texttt{[#2][#3]\{#4\}}} % \foo[bar1][bar2]{bar3} 94 | \newcommand{\cmdMOM}[4]{\cmd{#1}\texttt{\{#2\}[#3]\{#4\}}} % \foo{bar1}[bar2]{bar3} 95 | \newcommand{\cmdOMM}[4]{\cmd{#1}\texttt{[#2]\{#3\}\{#4\}}} 96 | \newcommand{\cmdOMOOM}[6]{\cmd{#1}\texttt{[#2]\{#3\}[#4][#5]\{#6\}}} 97 | \newcommand{\cmdMOMOM}[6]{\cmd{#1}\texttt{\{#2\}[#3]\{#4\}[#5]\{#6\}}} 98 | \newcommand{\opt}[1]{\texttt{#1}} 99 | \newcommand{\pkgi}[1]{\pkg{#1}% 100 | \index{#1@{\textsf{#1} 宏包}}} 101 | \makeatletter 102 | \def\cmdi{\@ifnextchar[{\@@cmdi}{\@cmdi}} 103 | \def\@cmdi#1{\@@cmdi[#1]{#1}} 104 | \def\@@cmdi[#1]#2{\cmd{#2}\index{#1@{\texttt{\textbackslash#2} 命令}}} 105 | \makeatother 106 | \newcommand{\envi}[1]{\env{#1}% 107 | \index{#1@{\texttt{#1} 环境}}} 108 | \newcommand{\emphi}[1]{\emph{#1}\index{#1}} 109 | \newcommand{\ascii}{\textsc{ascii}} 110 | \newcommand{\HR}{\rule{1em}{0.4pt}} 111 | \newcommand{\percent}{\char37} 112 | \newcommand{\pt}{\ensuremath{\,\mathtt{pt}}} 113 | \newcommand{\metacmd}[1]{{\rm\textlangle\it#1\rm\textrangle}} 114 | 115 | %test dvips mode 116 | \newif\ifdvips 117 | \makeatletter 118 | \ifdefstring{\Gin@driver}{dvips.def}{\dvipstrue}{\dvipsfalse} 119 | \makeatother 120 | 121 | % store some graphics for accelerating compiling 122 | \newsavebox{\boxgraphic} 123 | \newsavebox{\boxgraphictwo} 124 | \newsavebox{\boxw} 125 | \newsavebox{\boxrosette} 126 | \newsavebox{\boxrosettebox} 127 | \sbox{\boxgraphic}{\includegraphics{graphic.eps}} 128 | \sbox{\boxgraphictwo}{\includegraphics{graphic2.pdf}} 129 | \sbox{\boxw}{\includegraphics{w.eps}} 130 | \sbox{\boxrosette}{\includegraphics{rosette.eps}} 131 | \sbox{\boxrosettebox}{\includegraphics{rosettebox.eps}} 132 | 133 | \newenvironment{narrow}[2]{% 134 | \begin{list}{}{% 135 | \setlength{\topsep}{0pt}% 136 | \setlength{\leftmargin}{#1}% 137 | \setlength{\rightmargin}{#2}% 138 | \setlength{\listparindent}{\parindent}% 139 | \setlength{\itemindent}{\parindent}% 140 | \setlength{\parsep}{\parskip}}% 141 | \item[]}{\end{list}} 142 | \DeclareCaptionStyle{BigLeft}{style=default, labelsep=period, 143 | font=Large, labelfont=bf, 144 | justification=RaggedRight, 145 | singlelinecheck=false} 146 | \DeclareCaptionFont{BigAndBold}{\Large\bfseries} 147 | \DeclareCaptionLabelFormat{hash}{\bothIfFirst{#1}{ }{\#}#2} 148 | \DeclareCaptionLabelSeparator{arrow}{\quad\ensuremath{\Rightarrow}\quad} 149 | \DeclareCaptionFormat{reverse}{#3#2\ensuremath{\ll}#1\ensuremath{\gg}} 150 | \renewcommand\theContinuedFloat{\alph{ContinuedFloat}} 151 | 152 | %% Highlight color definition, from WangLei's epslatex-cn, ver 2000 153 | \definecolor{highlightcolor}{rgb}{1,1,0.8} 154 | \definecolor{mygreen}{rgb}{0,0.5,0} 155 | \definecolor{RoyalBlue}{cmyk}{1,0.50,0,0} 156 | \definecolor{light}{cmyk}{0,0,0,0.50} 157 | \definecolor{morelight}{cmyk}{0,0,0,0.20} 158 | \definecolor{Newlight}{cmyk}{0,0,0,0.20} 159 | \definecolor{SkyBlue}{cmyk}{0.62,0,0.12,0} 160 | \definecolor{NiceColor}{rgb}{0.21,0.42,0.73} 161 | \definecolor{PartColor}{cmyk}{0.12,0.59,0,0} 162 | \definecolor{VerbatimColor}{cmyk}{0.45,0.86,0,0} 163 | \definecolor{PageColor}{rgb}{0.21,0.42,0.73} 164 | 165 | \addbibresource{ref.bib} 166 | 167 | \makeindex 168 | 169 | \begin{document} 170 | 171 | \include{title} 172 | 173 | \include{preface} 174 | 175 | \tableofcontents\label{toc} 176 | 177 | \include{part1} 178 | 179 | \include{part2} 180 | 181 | \include{part3} 182 | 183 | \include{part4} 184 | 185 | \include{part5} 186 | 187 | \clearpage 188 | 189 | \printbibliography[title={参考文献},heading=mybibintoc] 190 | 191 | \clearpage 192 | \phantomsection\label{sec:index} 193 | \printindex 194 | 195 | \end{document} 196 | -------------------------------------------------------------------------------- /src/images/captiondef.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/captiondef.pdf -------------------------------------------------------------------------------- /src/images/golfer.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/golfer.pdf -------------------------------------------------------------------------------- /src/images/golfer.ps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-2.0 EPSF-1.2 2 | %%Creator:Adobe Illustrator(TM) 1.0b2- 3 | %%Title:golfer art+ 4 | %%CreationDate:1/6/87 9:32 AM 5 | %%DocumentFonts:Helvetica-Bold 6 | %%BoundingBox:7 31 577 726 7 | %%TemplateBox:0 -48 576 672 8 | %%EndComments 9 | 100 dict begin 10 | /q{bind def}bind def 11 | /Q{load def}q 12 | /x{exch def}q 13 | /X/def Q 14 | /g{/_g x/p{_g setgray}X}q 15 | /G{/_G x/P{_G setgray}X}q 16 | /k{/_b x/_g x/_r x/p{_r _g _b setrgbcolor}X}q 17 | /K{/_B x/_G x/_R x/P{_R _G _B setrgbcolor}X}q 18 | /d/setdash Q 19 | /i/setflat Q 20 | /j/setlinejoin Q 21 | /J/setlinecap Q 22 | /M/setmiterlimit Q 23 | /w/setlinewidth Q 24 | /_C{.25 sub round .25 add}q 25 | /_c{transform _C exch _C exch itransform}q 26 | /c{_c curveto}q 27 | /C/c Q 28 | /v{currentpoint 6 2 roll _c curveto}q 29 | /V/v Q 30 | /y{_c 2 copy curveto}q 31 | /Y/y Q 32 | /l{_c lineto}q 33 | /L/l Q 34 | /m{_c moveto}q 35 | /_e[]X 36 | /_E{_e length 0 ne{gsave 1 g 0 G 1 i 0 J 0 j .5 w 10 M[]0 d 37 | /Helvetica-Bold 24 0 0 1 z 38 | [0.966 0.259 -0.259 0.966 39 | _e 0 get _e 2 get add 2 div _e 1 get _e 3 get add 2 div]a 40 | (ERROR: can't fill a path)t T grestore}if}q 41 | /n/newpath Q 42 | /N/newpath Q 43 | /F{p{fill}stopped{/_e[pathbbox]X n _E}if}q 44 | /f{closepath F}q 45 | /S{P stroke}q 46 | /s{closepath S}q 47 | /B{gsave F grestore S}q 48 | /b{closepath B}q 49 | /u{}q 50 | /U{}q 51 | /_s/ashow Q 52 | /_S{(?)exch{2 copy 0 exch put pop dup true charpath currentpoint _m setmatrix 53 | stroke _M setmatrix moveto 3 copy pop rmoveto}forall pop pop pop n}q 54 | /_A{_a moveto _t exch 0 exch}q 55 | /_L{0 _l neg translate _M currentmatrix pop}q 56 | /_w{dup stringwidth exch 3 -1 roll length 1 sub _t mul add exch}q 57 | /_z[{0 0}bind{dup _w exch neg 2 div exch neg 2 div}bind 58 | {dup _w exch neg exch neg}bind]X 59 | /z{_z exch get/_a x/_t x/_l x exch findfont exch scalefont setfont}q 60 | /_d{matrix currentmatrix X}q 61 | /_D{/_m _d gsave concat/_M _d}q 62 | /e{_D p/t{_A _s _L}X}q 63 | /r{_D P/t{_A _S _L}X}q 64 | /a{_D/t{dup p _A _s P _A _S _L}X}q 65 | /o{_D/t{pop _L}X}q 66 | /T{grestore}q 67 | /Z{findfont begin currentdict dup length dict begin 68 | {1 index/FID ne{X}{pop pop}ifelse}forall/FontName exch X dup length 0 ne 69 | {/Encoding Encoding 256 array copy X 0 exch{dup type/nametype eq 70 | {Encoding 2 index 2 index put pop 1 add}{exch pop}ifelse}forall}if pop 71 | currentdict dup end end/FontName get exch definefont pop}q 72 | n 73 | %%EndProlog 74 | u 75 | 0.9 g 76 | 0 G 77 | 1 i 78 | 0 J 79 | 0 j 80 | 1 w 81 | 10 M 82 | []0 d 83 | %%Note: 84 | 15.815 40.248 m 85 | 567.815 40.002 L 86 | 567.748 716.565 L 87 | 15.998 716.81 L 88 | 15.815 40.248 L 89 | b 90 | U 91 | 1 g 92 | 285.313 40 m 93 | 567.688 40.125 L 94 | 567.812 78.375 L 95 | 285.312 78.25 L 96 | 285.313 40 L 97 | b 98 | 0 g 99 | 175.5 163 m 100 | 180.007 163 173.738 169.081 171.75 168.75 c 101 | 174.75 169.25 176.25 169.5 174.5 171.25 C 102 | 178 171.25 176.349 173.783 175 176.75 c 103 | 173.75 179.5 170.75 182.25 168.25 182 C 104 | 165.5 181.25 167.622 182.838 165.25 186 c 105 | 164.5 187 164.75 187.5 161.75 186.75 c 106 | 158.75 186 163.25 190 156.75 190 c 107 | 150.25 190 148.5 189 145.5 186 c 108 | 142.5 183 139.75 183.75 139.5 182.5 c 109 | 139.25 181.25 139.5 176.75 138.75 175.5 c 110 | 138 174.25 136.75 174.25 136.25 178 c 111 | 135.75 181.75 140.25 182.25 134 187 C 112 | 135.75 190.75 134.5 191.75 131 193.5 C 113 | 131 200 129.202 203.364 119.5 208.5 c 114 | 115.25 210.75 107 212.75 104.75 208.75 c 115 | 102.5 204.75 103 206.5 96.5 205.75 c 116 | 90 205 87.25 202.5 86.5 197.75 c 117 | 85.75 193 82.75 195 79 194.75 c 118 | 75.25 194.5 77 192.75 77.25 191.75 c 119 | 77.5 190.75 75.25 192.5 71.5 192 c 120 | 67.75 191.5 64.25 185.5 69.5 180.75 c 121 | 74.75 176 66.5 180.75 64.25 182.25 c 122 | 62 183.75 60.5 181.75 61 180.25 c 123 | 61.5 178.75 58.75 180.75 57.5 180.75 c 124 | 56.25 180.75 51.008 180.188 52 172.25 c 125 | 52.25 170.25 51.5 170.5 49.75 169.25 c 126 | 48 168 45.75 164.25 48.5 158.75 c 127 | 51.25 153.25 49 150 48 145.5 c 128 | 47 141 48 138.25 51.25 137.25 c 129 | 54.5 136.25 54 133.791 54 130.75 C 130 | 57 130.5 59 129.25 58.75 124.5 C 131 | 62.25 124.5 61.75 126.75 62.5 130 c 132 | 63.25 133.25 65.75 129 66.25 127 c 133 | 66.75 125 67.5 125 72 125 C 134 | 74.75 116.25 74.75 120.5 75.25 117.25 C 135 | 80 117.5 79.5 116.75 83.25 113.75 c 136 | 87 110.75 88.25 115.5 92 118.5 c 137 | 95.75 121.5 94.25 122.75 96.25 118.75 c 138 | 98.25 114.75 98.5 119 101.5 119.25 c 139 | 104.5 119.5 101 115.75 105.25 114.5 c 140 | 109.5 113.25 105 113.75 103.5 111.25 c 141 | 102 108.75 95 103.5 101.75 101.5 c 142 | 108.5 99.5 103.5 99.75 94.75 99.5 c 143 | 86 99.25 73.75 87.5 97.25 73.25 C 144 | 117.25 53.25 117.25 53.5 v 145 | 117.25 53.75 175.25 163 175.5 163 c 146 | f 147 | 1 J 148 | 0.2 w 149 | 389.709 210.076 m 150 | 511.826 210.076 l 151 | S 152 | 394.709 212.461 m 153 | 516.826 212.461 l 154 | S 155 | 415.459 215.112 m 156 | 537.576 215.112 l 157 | S 158 | 399.709 217.762 m 159 | 521.826 217.762 l 160 | S 161 | 402.459 222.799 m 162 | 524.576 222.799 l 163 | S 164 | 402.709 225.45 m 165 | 524.826 225.45 l 166 | S 167 | 392.959 227.851 m 168 | 515.076 227.851 l 169 | S 170 | 400.691 232.856 m 171 | 522.809 232.856 l 172 | S 173 | 388.191 235.241 m 174 | 510.309 235.241 l 175 | S 176 | 393.941 237.892 m 177 | 516.059 237.892 l 178 | S 179 | 393.441 240.292 m 180 | 515.559 240.292 l 181 | S 182 | 396.191 242.928 m 183 | 518.309 242.928 l 184 | S 185 | 386.441 245.579 m 186 | 508.559 245.579 l 187 | S 188 | 393.191 248.23 m 189 | 515.309 248.23 l 190 | S 191 | 414.191 250.631 m 192 | 536.309 250.631 l 193 | S 194 | 397.95 252.973 m 195 | 520.067 252.973 l 196 | S 197 | 398.7 255.358 m 198 | 520.817 255.358 l 199 | S 200 | 400.7 258.009 m 201 | 522.817 258.009 l 202 | S 203 | 384.45 260.659 m 204 | 506.567 260.659 l 205 | S 206 | 380.7 265.696 m 207 | 502.817 265.696 l 208 | S 209 | 379.95 268.347 m 210 | 502.067 268.347 l 211 | S 212 | 386.7 270.748 m 213 | 508.817 270.748 l 214 | S 215 | 394.433 275.752 m 216 | 516.55 275.752 l 217 | S 218 | 381.933 278.138 m 219 | 504.05 278.138 l 220 | S 221 | 379.433 280.789 m 222 | 501.55 280.789 l 223 | S 224 | 383.183 283.189 m 225 | 505.3 283.189 l 226 | S 227 | 370.433 285.825 m 228 | 492.55 285.825 l 229 | S 230 | 382.433 288.476 m 231 | 504.55 288.476 l 232 | S 233 | 356.183 291.127 m 234 | 478.3 291.127 l 235 | S 236 | 372.433 293.277 m 237 | 494.55 293.277 l 238 | S 239 | 361.866 296.006 m 240 | 483.984 296.006 l 241 | S 242 | 365.616 298.406 m 243 | 487.734 298.406 l 244 | S 245 | 366.866 301.042 m 246 | 488.984 301.042 l 247 | S 248 | 346.866 303.693 m 249 | 468.984 303.693 l 250 | S 251 | 338.616 306.344 m 252 | 460.734 306.344 l 253 | S 254 | 330.866 308.494 m 255 | 452.984 308.494 l 256 | S 257 | 301.575 344.342 m 258 | 423.692 344.342 l 259 | S 260 | 314.075 346.728 m 261 | 436.192 346.728 l 262 | S 263 | 318.325 349.378 m 264 | 440.442 349.378 l 265 | S 266 | 312.075 352.029 m 267 | 434.192 352.029 l 268 | S 269 | 327.325 357.065 m 270 | 449.442 357.065 l 271 | S 272 | 327.575 359.716 m 273 | 449.692 359.716 l 274 | S 275 | 317.825 362.117 m 276 | 439.942 362.117 l 277 | S 278 | 335.558 367.122 m 279 | 457.675 367.122 l 280 | S 281 | 313.058 369.507 m 282 | 435.175 369.507 l 283 | S 284 | 318.808 372.158 m 285 | 440.925 372.158 l 286 | S 287 | 317.579 404.674 m 288 | 439.696 404.674 l 289 | S 290 | 322.312 409.179 m 291 | 444.429 409.179 l 292 | S 293 | 323.812 412.065 m 294 | 445.929 412.065 l 295 | S 296 | 329.562 414.715 m 297 | 451.679 414.715 l 298 | S 299 | 329.062 417.116 m 300 | 451.179 417.116 l 301 | S 302 | 331.812 419.752 m 303 | 453.929 419.752 l 304 | S 305 | 322.062 422.402 m 306 | 444.179 422.402 l 307 | S 308 | 328.812 425.053 m 309 | 450.929 425.053 l 310 | S 311 | 349.812 427.454 m 312 | 471.929 427.454 l 313 | S 314 | 333.571 429.796 m 315 | 455.688 429.796 l 316 | S 317 | 334.321 432.182 m 318 | 456.438 432.182 l 319 | S 320 | 336.321 434.832 m 321 | 458.438 434.832 l 322 | S 323 | 320.071 437.483 m 324 | 442.188 437.483 l 325 | S 326 | 316.321 442.519 m 327 | 438.438 442.519 l 328 | S 329 | 315.571 445.17 m 330 | 437.688 445.17 l 331 | S 332 | 322.321 447.571 m 333 | 444.438 447.571 l 334 | S 335 | 330.054 452.576 m 336 | 452.171 452.576 l 337 | S 338 | 317.554 454.961 m 339 | 439.671 454.961 l 340 | S 341 | 315.054 457.612 m 342 | 437.171 457.612 l 343 | S 344 | 318.804 460.012 m 345 | 440.921 460.012 l 346 | S 347 | 306.054 462.648 m 348 | 428.171 462.648 l 349 | S 350 | 300.054 465.299 m 351 | 422.171 465.299 l 352 | S 353 | 291.804 467.95 m 354 | 413.921 467.95 l 355 | S 356 | 308.054 470.101 m 357 | 430.171 470.101 l 358 | S 359 | 260.834 543.511 m 360 | 382.951 543.511 l 361 | S 362 | 246.066 548.016 m 363 | 368.184 548.016 l 364 | S 365 | 256.066 550.901 m 366 | 378.184 550.901 l 367 | S 368 | 253.566 553.552 m 369 | 375.684 553.552 l 370 | S 371 | 230.316 555.952 m 372 | 352.434 555.952 l 373 | S 374 | 244.566 558.588 m 375 | 366.684 558.588 l 376 | S 377 | 238.566 561.239 m 378 | 360.684 561.239 l 379 | S 380 | 230.316 563.89 m 381 | 352.434 563.89 l 382 | S 383 | 216.566 565.541 m 384 | 338.684 565.541 l 385 | S 386 | 104.443 572.01 m 387 | 226.575 572.209 l 388 | S 389 | 98.682 567.48 m 390 | 220.814 567.68 l 391 | S 392 | 91.688 565.11 m 393 | 213.82 565.31 l 394 | S 395 | 97.192 561.955 m 396 | 219.324 562.155 l 397 | S 398 | 73.943 559.517 m 399 | 196.075 559.717 l 400 | S 401 | 88.199 556.904 m 402 | 210.331 557.103 l 403 | S 404 | 82.203 554.243 m 405 | 204.335 554.443 l 406 | S 407 | 73.956 551.578 m 408 | 196.088 551.778 l 409 | S 410 | 73.707 549.405 m 411 | 195.839 549.605 l 412 | S 413 | 85.302 539.953 m 414 | 207.434 540.152 l 415 | S 416 | 79.541 535.423 m 417 | 201.673 535.623 l 418 | S 419 | 72.547 533.053 m 420 | 194.679 533.253 l 421 | S 422 | 78.051 529.898 m 423 | 200.183 530.098 l 424 | S 425 | 54.802 527.46 m 426 | 176.934 527.66 l 427 | S 428 | 69.058 524.847 m 429 | 191.19 525.046 l 430 | S 431 | 63.061 522.186 m 432 | 185.194 522.385 l 433 | S 434 | 54.815 519.521 m 435 | 176.947 519.721 l 436 | S 437 | 54.566 517.348 m 438 | 176.698 517.547 l 439 | S 440 | u 441 | 189.475 196.879 m 442 | 311.592 196.879 l 443 | S 444 | 176.975 199.265 m 445 | 299.092 199.265 l 446 | S 447 | 174.475 201.916 m 448 | 296.592 201.916 l 449 | S 450 | 178.225 204.316 m 451 | 300.342 204.316 l 452 | S 453 | 165.475 206.952 m 454 | 287.592 206.952 l 455 | S 456 | 177.475 209.603 m 457 | 299.592 209.603 l 458 | S 459 | 155.725 212.254 m 460 | 277.842 212.254 l 461 | S 462 | 167.475 214.404 m 463 | 289.592 214.404 l 464 | S 465 | 156.908 217.133 m 466 | 279.026 217.133 l 467 | S 468 | 144.658 219.533 m 469 | 266.776 219.533 l 470 | S 471 | 161.908 222.169 m 472 | 284.026 222.169 l 473 | S 474 | 153.908 224.82 m 475 | 276.026 224.82 l 476 | S 477 | 163.658 226.971 m 478 | 285.776 226.971 l 479 | S 480 | 152.408 229.121 m 481 | 274.526 229.121 l 482 | S 483 | 145.925 233.316 m 484 | 268.042 233.316 l 485 | S 486 | 157.675 235.466 m 487 | 279.792 235.466 l 488 | S 489 | 147.108 238.195 m 490 | 269.226 238.195 l 491 | S 492 | 134.858 240.595 m 493 | 256.976 240.595 l 494 | S 495 | 137.608 243.231 m 496 | 259.726 243.231 l 497 | S 498 | 144.108 245.882 m 499 | 266.226 245.882 l 500 | S 501 | 153.858 248.033 m 502 | 275.976 248.033 l 503 | S 504 | 155.108 231.183 m 505 | 277.226 231.183 l 506 | S 507 | 103.425 247.816 m 508 | 225.542 247.816 l 509 | S 510 | 100.175 249.966 m 511 | 222.292 249.966 l 512 | S 513 | 89.608 252.695 m 514 | 211.726 252.695 l 515 | S 516 | 77.358 255.095 m 517 | 199.476 255.095 l 518 | S 519 | U 520 | u 521 | 1 g 522 | 0 J 523 | 1 w 524 | 120.001 389.999 m 525 | 170.811 344.713 248.714 349.191 294.001 400.001 c 526 | 339.287 450.811 334.809 528.714 283.999 574.001 c 527 | 233.189 619.287 155.286 614.809 109.999 563.999 c 528 | 64.713 513.189 69.191 435.286 120.001 389.999 c 529 | f 530 | 202 482 m 531 | F 532 | U 533 | u 534 | 258 302 m 535 | 306.6 267.759 373.759 279.4 408 328 c 536 | 442.241 376.6 430.6 443.759 382 478 c 537 | 333.4 512.241 266.241 500.6 232 452 c 538 | 197.759 403.4 209.4 336.241 258 302 c 539 | f 540 | 320 390 m 541 | F 542 | U 543 | u 544 | 196 376 m 545 | 252.332 345.072 323.072 365.668 354 422 c 546 | 384.928 478.332 364.332 549.072 308 580 c 547 | 251.668 610.928 180.928 590.332 150 534 c 548 | 119.072 477.668 139.668 406.928 196 376 c 549 | f 550 | 252 478 m 551 | F 552 | U 553 | u 554 | 106 257 m 555 | 170.064 231.595 242.595 262.936 268 327 c 556 | 293.405 391.064 262.064 463.595 198 489 c 557 | 133.936 514.405 61.405 483.064 36 419 c 558 | 10.595 354.936 41.936 282.405 106 257 c 559 | f 560 | 152 373 m 561 | F 562 | U 563 | u 564 | 366.001 122 m 565 | 415.706 97.7 475.7 118.296 500 168.001 c 566 | 524.3 217.706 503.704 277.7 453.999 302 c 567 | 404.294 326.3 344.3 305.704 320 255.999 c 568 | 295.7 206.294 316.296 146.3 366.001 122 c 569 | f 570 | 410 212 m 571 | F 572 | U 573 | u 574 | 227.999 198 m 575 | 267.763 185.85 309.849 208.236 322 247.999 c 576 | 334.15 287.763 311.764 329.849 272.001 342 c 577 | 232.237 354.15 190.151 331.764 178 292.001 c 578 | 165.85 252.237 188.236 210.151 227.999 198 c 579 | f 580 | 250 270 m 581 | F 582 | U 583 | 0 g 584 | 15.75 71.25 m 585 | 24.25 82.75 24.75 84.75 27.75 82.25 c 586 | 30.75 79.75 31.75 81.25 32.75 82.75 c 587 | 33.75 84.25 30.75 86.75 35.75 88.75 c 588 | 40.75 90.75 41.25 91.75 43.25 89.75 c 589 | 45.25 87.75 39.25 89.25 50.25 88.75 c 590 | 61.25 88.25 70.25 81.75 74.25 75.25 c 591 | 78.25 68.75 77.75 67.25 75.25 63.25 c 592 | 72.75 59.25 68.25 56.75 72.25 57.25 c 593 | 76.25 57.75 75.75 60.75 77.75 56.75 c 594 | 79.75 52.75 80.25 51.25 79.25 49.25 c 595 | 78.25 47.25 74.25 46.75 81.25 46.25 c 596 | 88.25 45.75 91.75 37.557 91.75 40.25 c 597 | 15.752 40.248 l 598 | 15.75 71.25 l 599 | f 600 | 340.75 55.5 m 601 | F 602 | u 603 | u 604 | 3 w 605 | 280.774 44.223 m 606 | 567.893 44.223 l 607 | S 608 | 280.774 48.728 m 609 | 567.893 48.728 l 610 | S 611 | 280.774 53.734 m 612 | 567.893 53.734 l 613 | S 614 | U 615 | u 616 | 280.774 58.739 m 617 | 567.893 58.739 l 618 | S 619 | 280.774 63.245 m 620 | 567.893 63.245 l 621 | S 622 | 280.774 68.251 m 623 | 567.893 68.251 l 624 | S 625 | U 626 | u 627 | 280.774 73.257 m 628 | 567.893 73.257 l 629 | S 630 | 280.774 78.263 m 631 | 567.893 78.263 l 632 | S 633 | U 634 | U 635 | 0.8 g 636 | 0.2 w 637 | 243 252 m 638 | 323 235 l 639 | 346 273 l 640 | 368 248 l 641 | 376 247 376 248 V 642 | 377 174 380.5 121 330.5 40 C 643 | 90.5 40 91.5 40 V 644 | 138.5 129 163 162 214 200 C 645 | 236 229 234.527 240.11 238 254 c 646 | 240 262 243 252 y 647 | b 648 | 0.5 g 649 | 359.5 485 m 650 | 389.267 485 402.5 486.25 415.75 489 c 651 | 429 491.75 435 493.25 439 493.5 c 652 | 443 493.75 490.398 537.797 502.5 562 c 653 | 507 571 514.5 577 517.5 579.5 c 654 | 520.5 582 501.5 591 y 655 | 428 512 428 512.5 v 656 | 428 513 356.5 510 356 509.5 c 657 | 355.5 509 351 488 y 658 | 359 485 359.5 485 v 659 | b 660 | 0.7 g 661 | 370 496.5 m 662 | 368 480.5 365.5 472.5 364.5 471.5 C 663 | 329.5 476.5 l 664 | 323.5 489.5 l 665 | 370 496.5 l 666 | b 667 | 0.5 g 668 | 352.75 494 m 669 | 380 493.25 399.626 496.75 407.5 499 c 670 | 418 502 424.586 497.135 432.75 505.5 c 671 | 453 526.25 473.5 544.5 496.5 586.5 C 672 | 473.5 590 473.5 590.5 V 673 | 456 571.5 443 563.5 434 558 c 674 | 425 552.5 416 544 408.5 534.5 C 675 | 399 533 379.5 537.5 364 537.5 c 676 | 348.5 537.5 352.75 494 y 677 | b 678 | 1 g 679 | 500 583 m 680 | 500.5 577.098 517 573.5 520.5 572 c 681 | 524 570.5 526.353 568.989 526.5 579 c 682 | 526.675 590.992 541 586 539 624 C 683 | 538.5 624 506 628 y 684 | 499.958 583.498 500 583 v 685 | b 686 | 0 g 687 | 1 J 688 | 3 w 689 | 562 629 m 690 | 343 645 217 644 77 601 C 691 | 52 576 L 692 | 59.5 562 80.132 560.877 87 589 c 693 | 89.513 599.292 87 597 101 601 c 694 | 108.323 603.092 265 654 561 617 C 695 | 562 629 l 696 | f 697 | 1 G 698 | 0 J 699 | 0.7 w 700 | 305 634 m 701 | 391.5 636.5 415 635 473 632 c 702 | S 703 | 0.5 w 704 | 213 626.5 m 705 | 153.5 619 125.925 611.699 90.75 602.5 c 706 | 78.654 599.337 82.567 597.884 82.5 592 c 707 | 82.395 582.717 73.75 571 59 572.5 c 708 | S 709 | 1 g 710 | 0 G 711 | 1 w 712 | 73 595.25 m 713 | 79.25 592.5 76.25 574.75 57.25 580 C 714 | 73 595.25 l 715 | f 716 | 0.5 g 717 | 0.2 w 718 | 312 574.25 m 719 | 311.25 570.5 310.687 571.687 306.187 569.187 C 720 | 307.687 564.187 311.106 565.66 304.5 561.5 c 721 | 302.594 560.299 305.598 556.561 305.75 555.5 c 722 | 306.038 553.485 304.629 548.098 297 548.5 c 723 | 292.25 548.75 255.5 536 y 724 | 229.5 608.5 l 725 | 224 650 224.5 650 v 726 | 248.101 650 273.345 678.918 298 655.5 c 727 | 324.857 629.99 316.981 613.501 316.75 612.875 c 728 | 313.346 603.644 313.238 604.937 314.75 597.375 c 729 | 316.88 586.725 317.016 588.834 318.625 584.75 C 730 | 320.25 581.875 318.625 580.375 y 731 | 316.689 578.236 313.081 579.809 310.375 579 c 732 | 307.013 577.994 312 574.25 y 733 | B 734 | 0 g 735 | 0.5 w 736 | 288.5 456 m 737 | S 738 | 0.2 w 739 | 211 511 m 740 | 194.5 518.5 187 520.5 170.5 500 C 741 | 154.5 498.5 149.5 501 131.5 479.5 C 742 | 151 477.5 140 475 161 460 c 743 | 182 445 190.5 436.5 212 461 C 744 | 224.5 458 229 454.5 238.5 447 C 745 | 238 446.5 237 500.5 y 746 | 211 511 l 747 | f 748 | 1 g 749 | 207.5 526.5 m 750 | 206 514.5 204 506 236 490.5 C 751 | 242.5 509.5 l 752 | 207.5 526.5 l 753 | b 754 | 0 g 755 | 1 w 756 | 294.464 627.589 m 757 | 288.571 618.522 284.821 617.313 280 615.5 c 758 | 275.179 613.686 271.429 605.224 277.857 587.089 C 759 | 274.107 586.485 275.179 585.88 275.714 582.858 C 760 | 271.429 599.179 270.357 606.433 259.643 609.455 c 761 | 248.929 612.477 245.714 589.507 247.321 566.537 C 762 | 228.572 554.448 L 763 | 224.639 578.851 235.956 576.38 212.5 600.992 c 764 | 194.17 620.226 195.893 654.791 225.357 658.418 C 765 | 223.214 667.485 233.929 678.97 259.107 677.761 c 766 | 284.286 676.552 281.071 667.485 Y 767 | 302.5 667.485 334.964 665.942 301.429 614.895 C 768 | 306.25 639.679 303.571 643.306 296.607 646.933 C 769 | 299.286 634.239 294.464 627.589 y 770 | f 771 | 0.7 g 772 | 0.2 w 773 | 207.5 524.5 m 774 | 214.75 519.25 241.5 509 y 775 | 239 504.5 l 776 | 232 503 214.5 508.75 206.75 519 C 777 | 207 522.5 207.5 524.5 y 778 | b 779 | 1 g 780 | 298 546.5 m 781 | 272.625 574.625 248.5 596 195.5 568.5 C 782 | 196.26 524.417 214.492 504.333 239.5 510.5 C 783 | 298 546.5 l 784 | b 785 | 0.8 g 786 | 351.5 542 m 787 | 367 540 L 788 | 358.5 509.5 357 489.5 357 482 C 789 | 323.5 482.5 295.5 485.5 284.5 477.5 c 790 | 298.5 468.5 l 791 | 299 457 l 792 | 270.5 451 l 793 | 238.5 483.5 l 794 | 241 513.5 l 795 | 250.5 538 252.5 547.5 282.5 550 C 796 | 306.251 550 334.454 541.702 343.687 542.187 C 797 | 342.576 538.175 346.737 538.055 351.5 542 c 798 | b 799 | 0 g 800 | 1 w 801 | 333.25 484.75 m 802 | 343.25 458.25 371.5 466 349 418.5 C 803 | 359 348.5 378 357 363 336 C 804 | 358.5 333 359 333 v 805 | 359.5 333 353 328 359 327.5 c 806 | 365 327 371 316.5 373.5 253.5 C 807 | 381 245.5 l 808 | 371 221 371 220.5 V 809 | 360.5 247 358 253 351 261.5 C 810 | 340 238 331.5 220.5 328.5 211.5 C 811 | 301 229.5 265 250 232.5 244.5 C 812 | 247.5 287 246 299.5 275 320.5 C 813 | 270 331.5 268.689 334.634 265.75 336.25 c 814 | 255.75 341.75 261.891 340.771 251 375 c 815 | 247.5 386 249.5 384 255.5 399 C 816 | 252.5 397 253.5 401 253.5 402.5 c 817 | 253.5 404 252.057 400.023 251 402.5 c 818 | 235 440 219.5 489.5 249.5 534 C 819 | 238.5 503.5 242.102 477.13 260 463 c 820 | 269.5 455.5 278.75 453.25 291 457.25 C 821 | 297.5 461 299.549 465.787 282 476.75 C 822 | 292.5 487.5 333.25 484.75 y 823 | f 824 | 457.25 576.25 m 825 | 454.936 574.233 453.51 595.217 479.25 583 C 826 | 495.651 573.321 495.931 560.263 482.5 560.5 C 827 | 486.25 566 491.682 565.465 478.5 575 c 828 | 463.444 585.891 460.318 578.924 457.25 576.25 c 829 | f 830 | 1 g 831 | 460.75 581.5 m 832 | 463.387 583.699 467.528 583.937 470.5 583.375 c 833 | 473.752 582.76 473.75 581.75 Y 834 | 461.735 583.841 458.891 579.95 460.75 581.5 c 835 | f 836 | 0 g 837 | 310.393 647.785 m 838 | 329.089 651.66 328.75 623.692 320.178 607.976 C 839 | 319.107 621.274 316.428 636.386 310.536 635.782 c 840 | 304.643 635.177 310.393 647.785 y 841 | f 842 | 284.286 663.858 m 843 | 286.964 677.157 280.536 689.246 281.071 689.246 C 844 | 289.107 677.761 288.036 665.672 y 845 | 284.286 663.858 l 846 | f 847 | 0.2 w 848 | 274.643 683.201 m 849 | 278.929 678.97 280 668.694 279.464 665.672 c 850 | S 851 | 276.25 686.224 m 852 | 284.393 677.036 283.75 662.045 y 853 | S 854 | 1 w 855 | 297.679 661.44 m 856 | 312.602 661.44 312.143 677.157 310.536 680.784 C 857 | 308.929 672.321 305.179 666.276 292.857 664.463 C 858 | 297.679 661.44 l 859 | f 860 | 0.2 w 861 | 295 661.44 m 862 | 298.75 666.276 302.5 675.343 294.464 683.201 c 863 | S 864 | 300.357 681.992 m 865 | 304.265 669.255 303.814 670.807 292.321 656.604 c 866 | S 867 | 311.821 649.078 m 868 | 321.464 649.078 330.571 646.66 329.5 627.921 c 869 | S 870 | 307.536 650.892 m 871 | 316.268 651.33 319.057 653.025 326.821 646.056 c 872 | 330.446 642.802 331.1 637.618 331.107 637.593 c 873 | S 874 | 304.643 665.067 m 875 | 305.629 663.874 321.031 667.072 321.304 651.569 c 876 | S 877 | 0.5 w 878 | 311.071 639.679 m 879 | 317.893 638.968 312.696 617.332 v 880 | S 881 | 1 w 882 | 313.375 612.875 m 883 | 315.455 614.262 313.5 617.375 297.125 615.375 C 884 | 310.375 616.625 311.875 611.875 313.375 612.875 c 885 | f 886 | 1 g 887 | 308.5 604.875 m 888 | 309.833 600.875 309.125 601.25 307.375 599 C 889 | 302.25 600.625 303.25 599.875 299 602.5 C 890 | 304.25 604.75 308.375 605.25 308.5 604.875 c 891 | f 892 | 0 g 893 | 307.5 604.437 m 894 | 305.463 602.811 305.481 601.49 307.375 598.937 C 895 | 309.261 601.307 309.489 602.172 308.562 605.062 C 896 | 308.562 604.937 308.191 604.989 307.5 604.437 c 897 | f 898 | 0.2 w 899 | 305.625 583.75 m 900 | 304.687 582.562 306.5 579.375 308.875 579.75 c 901 | S 902 | 1 w 903 | 311.125 574.5 m 904 | 310.25 573.898 310 573.437 304.937 569.312 C 905 | 306.229 564.611 308.063 564.014 308.312 564.562 C 906 | 309.775 566.476 307.663 569.565 306.687 569.75 C 907 | 311.812 571.75 311.625 572.5 312 574.25 C 908 | 311.687 574.75 311.176 574.535 311.125 574.5 c 909 | f 910 | 298.625 603 m 911 | 302 600.437 304.294 599.524 307.812 598.937 c 912 | 308.187 598.875 308.562 598.5 308.687 597.875 c 913 | S 914 | 297.5 602.25 m 915 | 299.939 602.851 307.687 603.062 311.75 607.812 C 916 | 307.812 606 297.011 602.129 297.5 602.25 c 917 | f 918 | 213.5 576.125 m 919 | 218.674 549.92 230.862 532.355 245.5 526.5 C 920 | 243.75 514.5 209.75 494.25 195.5 568.5 C 921 | 203.75 572.25 213.347 576.901 213.5 576.125 c 922 | f 923 | 0.2 w 924 | 343.375 541.75 m 925 | 333.375 534.75 318.25 525.5 312 521.25 c 926 | S 927 | 351.562 541.937 m 928 | 337.936 530.579 327.2 525.581 313.25 517.75 c 929 | S 930 | 0.3 w 931 | 312.75 495 m 932 | 291.75 483.5 276.25 476 274.25 466 c 933 | S 934 | 0.5 w 935 | 229 580.75 m 936 | 235.5 571 241.25 554.75 245.75 528 c 937 | S 938 | 1 w 939 | 235 581 m 940 | 246 555.75 246.75 537.75 245.75 526 C 941 | 252.125 560.5 243.75 567.75 239.75 581.5 C 942 | 240 581.5 237 581.75 235 581 C 943 | f 944 | 0.7 g 945 | 0.2 w 946 | 248.625 580.5 m 947 | 253.169 564.605 256.75 553.75 250.25 535.75 C 948 | 257.5 552.75 259.125 558.937 252.875 579.687 C 949 | 251.029 580.149 248.517 580.879 248.625 580.5 c 950 | b 951 | 0 g 952 | 1 w 953 | 258.25 577.75 m 954 | 262.047 567.879 262.5 552.5 259.25 544.25 C 955 | 267.75 548.25 275 549.75 278.25 549.75 C 956 | 281.75 555.25 282.75 556.75 279.5 565.25 C 957 | 270.06 573.13 257.909 578.635 258.25 577.75 c 958 | f 959 | 207.5 524.5 m 960 | F 961 | 207.25 514.75 m 962 | 207.185 514.86 228.75 497.5 238 500.75 C 963 | 236 494.5 l 964 | 225 498 213.924 503.454 207.25 514.75 c 965 | f 966 | 1 g 967 | 0.2 w 968 | 191 516 m 969 | 175.472 497.418 168.5 492 171.5 453 C 970 | 185 443.5 189 443.5 200 450.5 C 971 | 186.5 469.5 182 491 198.5 515.5 C 972 | 194.5 516 191.339 516.406 191 516 c 973 | b 974 | 201 515 m 975 | 194 499 187 484 203.5 453 C 976 | 206.5 455 211.5 460.5 212 461 C 977 | 203.5 480.5 193.5 501.5 206 510.5 C 978 | 205 499.5 210.5 490.5 232.5 473.5 C 979 | 232.5 483 231.5 482.5 233 492 C 980 | 221 498 210 505 208 512.5 C 981 | 201 515 l 982 | b 983 | 0 g 984 | 1 G 985 | 0.5 w 986 | 268 442.5 m 987 | 253.5 402.5 l 988 | S 989 | 269.5 435.5 m 990 | 258.5 407 258.5 407.5 v 991 | S 992 | 0.5 G 993 | 0.4 w 994 | 293.5 480.5 m 995 | 297.5 463.5 298.5 460.5 289 445.5 c 996 | S 997 | 1 G 998 | 1 J 999 | 0.3 w 1000 | 349.125 418.125 m 1001 | 338.393 403.978 348.387 416.158 341.625 408.875 c 1002 | S 1003 | u 1004 | 1 g 1005 | 0 G 1006 | 0 J 1007 | 0.2 w 1008 | 336.038 340.015 m 1009 | 338.267 329.694 L 1010 | 342.937 338.843 L 1011 | 340.707 349.164 L 1012 | 336.038 340.015 L 1013 | b 1014 | 339.487 339.429 m 1015 | B 1016 | U 1017 | u 1018 | 328.791 340.569 m 1019 | 331.562 330.38 L 1020 | 335.743 339.762 L 1021 | 332.972 349.952 L 1022 | 328.791 340.569 L 1023 | b 1024 | 332.267 340.166 m 1025 | B 1026 | U 1027 | u 1028 | 321.758 340.67 m 1029 | 325.133 330.664 L 1030 | 328.746 340.28 L 1031 | 325.37 350.286 L 1032 | 321.758 340.67 L 1033 | b 1034 | 325.252 340.475 m 1035 | B 1036 | U 1037 | u 1038 | 314.504 340.97 m 1039 | 317.88 330.964 L 1040 | 321.492 340.58 L 1041 | 318.117 350.586 L 1042 | 314.504 340.97 L 1043 | b 1044 | 317.998 340.775 m 1045 | B 1046 | U 1047 | u 1048 | u 1049 | 307.24 340.468 m 1050 | 311.982 331.033 L 1051 | 314.214 341.059 L 1052 | 309.473 350.494 L 1053 | 307.24 340.468 L 1054 | b 1055 | 310.727 340.764 m 1056 | B 1057 | U 1058 | u 1059 | 300.016 339.751 m 1060 | 304.757 330.316 L 1061 | 306.99 340.342 L 1062 | 302.249 349.777 L 1063 | 300.016 339.751 L 1064 | b 1065 | 303.503 340.047 m 1066 | B 1067 | U 1068 | U 1069 | u 1070 | u 1071 | 292.985 339.2 m 1072 | 298.349 330.104 L 1073 | 299.903 340.258 L 1074 | 294.54 349.353 L 1075 | 292.985 339.2 L 1076 | b 1077 | 296.444 339.729 m 1078 | B 1079 | U 1080 | u 1081 | 285.826 338 m 1082 | 291.189 328.904 L 1083 | 292.744 339.057 L 1084 | 287.38 348.153 L 1085 | 285.826 338 L 1086 | b 1087 | 289.285 338.529 m 1088 | B 1089 | U 1090 | U 1091 | u 1092 | 278.742 336.229 m 1093 | 285.413 328.042 L 1094 | 285.423 338.314 L 1095 | 278.753 346.501 L 1096 | 278.742 336.229 L 1097 | b 1098 | 282.083 337.272 m 1099 | B 1100 | U 1101 | u 1102 | 272.228 332.392 m 1103 | 279.743 324.974 L 1104 | 278.644 335.186 L 1105 | 271.13 342.604 L 1106 | 272.228 332.392 L 1107 | b 1108 | 275.437 333.789 m 1109 | B 1110 | U 1111 | 0 g 1112 | 1 G 1113 | 1 w 1114 | 266.25 335.5 m 1115 | 276.25 351.5 284.659 350 343 350 c 1116 | 364 350 363 336 y 1117 | S 1118 | 271 321 m 1119 | 294 332 309 335 362 324 c 1120 | S 1121 | u 1122 | 1 g 1123 | 0 G 1124 | 0.2 w 1125 | 350.823 325.912 m 1126 | 364.33 322.302 L 1127 | 361.658 347.078 L 1128 | 348.151 350.689 L 1129 | 350.823 325.912 L 1130 | b 1131 | 356.24 336.495 m 1132 | B 1133 | U 1134 | 0 g 1135 | 1 w 1136 | 274 347.5 m 1137 | 281.5 351.5 280.229 357.581 311 338 c 1138 | 316.5 334.5 322.5 338 351 357.5 C 1139 | 282 360 l 1140 | 274 347.5 l 1141 | f 1142 | 1 G 1143 | 0.5 w 1144 | 269.25 355.75 m 1145 | 277.75 353.25 284.25 352.5 288.75 349.75 c 1146 | S 1147 | 353.25 358.25 m 1148 | 347.25 354 345.5 353.5 339.75 349.5 c 1149 | S 1150 | 0.3 w 1151 | 355.25 272.75 m 1152 | 359.75 281.5 361.25 285 363.25 290.75 c 1153 | S 1154 | 0.5 G 1155 | 0.5 w 1156 | 354 219 m 1157 | 339 195 327 176 317 166 c 1158 | S 1159 | 323 197 m 1160 | 310 150 308 135 235 48 c 1161 | S 1162 | 1 w 1163 | 241 241.5 m 1164 | 232 227.5 215.231 198.443 215 198 c 1165 | 192.581 155 178 110 164 71 c 1166 | S 1167 | 0 G 1168 | 0.2 w 1169 | 265.394 600.822 m 1170 | 263.576 606.114 262.122 612.994 253.035 607.173 C 1171 | 250.126 603.468 249.763 601.704 249.763 596.589 c 1172 | 249.763 591.473 254.307 592.179 257.76 587.24 c 1173 | 261.213 582.301 266.484 579.302 267.029 588.475 c 1174 | S 1175 | 0.3 g 1176 | 260.668 605.409 m 1177 | 262.486 601.352 261.94 599.941 257.578 597.824 c 1178 | 253.216 595.707 257.76 591.473 260.305 592.355 c 1179 | 262.849 593.237 263.394 592.532 264.303 591.65 c 1180 | 265.212 590.768 266.666 591.826 264.667 594.119 c 1181 | 262.667 596.413 259.759 593.943 261.032 597.471 c 1182 | 262.304 600.999 260.668 605.409 y 1183 | b 1184 | 0 g 1185 | 257.578 606.644 m 1186 | 254.125 605.056 251.58 604.174 251.58 598.177 c 1187 | 251.58 592.179 258.487 590.415 259.214 588.651 c 1188 | S 1189 | u 1190 | 1 g 1191 | 257.397 584.594 m 1192 | 258.601 581.671 262.019 580.25 265.03 581.419 c 1193 | 268.041 582.588 269.506 585.905 268.302 588.827 c 1194 | 267.097 591.75 263.679 593.172 260.668 592.003 c 1195 | 257.657 590.833 256.192 587.516 257.397 584.594 c 1196 | b 1197 | 262.849 586.711 m 1198 | B 1199 | U 1200 | u 1201 | 0.2 g 1202 | 1 w 1203 | 258.487 586.358 m 1204 | 263.213 582.477 L 1205 | 267.211 587.063 L 1206 | 262.486 590.944 L 1207 | 258.487 586.358 L 1208 | f 1209 | 262.849 586.711 m 1210 | F 1211 | U 1212 | 0 g 1213 | 309.25 579.875 m 1214 | 310.75 580.5 313.25 583.125 314.625 581 c 1215 | F 1216 | 1 g 1217 | 307.964 565.926 m 1218 | 307.88 566.015 306.794 566.513 307.22 566.682 c 1219 | 307.647 566.851 307.68 566.599 307.935 566.639 C 1220 | 307.924 566.13 307.971 566.31 307.964 565.926 c 1221 | f 1222 | 510 104 m 1223 | 509.564 104.895 511.5 89 495.5 74.5 C 1224 | 495.5 68 l 1225 | 506 79 518.582 86.358 510 104 c 1226 | f 1227 | 0 g 1228 | 0.2 w 1229 | 403.75 534.25 m 1230 | 413.25 533.75 415.75 534.25 417.75 534.75 c 1231 | S 1232 | 1 G 1233 | 0.3 w 1234 | 538.5 629 m 1235 | 542 625 547.5 620 y 1236 | S 1237 | 548.75 629.25 m 1238 | 552.25 625.25 557.75 620.25 y 1239 | S 1240 | 0 G 1241 | 0.2 w 1242 | 518.5 587.5 m 1243 | 522.5 586 526 587.5 527 587.5 c 1244 | S 1245 | 514 617.5 m 1246 | 518 614 518.5 611.5 520 607.5 c 1247 | S 1248 | 528.25 613.75 m 1249 | 533.25 615.25 532.5 615.5 538.25 614.25 c 1250 | S 1251 | 1 g 1252 | 538 637.5 m 1253 | 537.25 618 533 617.5 531.25 617.5 c 1254 | 529.5 617.5 528.235 615.255 528.5 622.5 c 1255 | 529.25 643 528.775 643.326 534.25 642.75 c 1256 | 539 642.25 539 642.25 540.5 630.75 C 1257 | 538 631 l 1258 | 538 629 538 631.25 v 1259 | 538 633.5 538 637.5 Y 1260 | b 1261 | 0.7 g 1262 | 507.5 650.75 m 1263 | 510 648.5 510.25 645.75 511.75 643.25 c 1264 | 513.25 640.75 508.5 638.25 508.5 638 c 1265 | 508.5 637.75 507.5 650.75 y 1266 | b 1267 | 1 g 1268 | 529.25 639.25 m 1269 | 528.5 643 527 642.75 524 642.75 c 1270 | 521 642.75 519.75 644 519.5 632.25 C 1271 | 519.75 638 519.75 641 v 1272 | 519.75 644 518.75 644.25 515.25 644.25 c 1273 | 511.75 644.25 511.75 646 509.25 641.25 c 1274 | 506.75 636.5 505.75 633.25 506 633.25 c 1275 | 506.25 633.25 509.75 628.25 Y 1276 | 511.5 620.25 512.75 619.75 515.5 619.5 c 1277 | 518.25 619.25 520.25 618.25 519.5 623.5 C 1278 | 521 618.25 521 617.75 524.75 617 c 1279 | 528.5 616.25 528.5 618.25 528.5 622.5 c 1280 | 528.5 626.75 529.25 639.25 y 1281 | b 1282 | 507.75 636.75 m 1283 | 512.687 638.231 515.604 641 515.25 641 C 1284 | 517.839 637.469 517.494 629.281 508.75 625.5 C 1285 | 508.75 625.25 502 635 502.25 634.75 c 1286 | 502.5 634.5 507.75 636.75 y 1287 | b 1288 | 493.5 571.5 m 1289 | 495.171 563.425 503.634 565.498 503.5 576.25 c 1290 | 503.25 596.25 515.75 586.25 509 636.75 c 1291 | 508.301 641.977 510 650.75 506.5 651.5 c 1292 | 501.514 652.568 500.436 652.26 499.25 644.75 c 1293 | 498.5 640 496.5 646.25 496 648.5 c 1294 | 495.5 650.75 493.75 651 490.75 650.25 c 1295 | 487.75 649.5 488.253 648.665 487.5 645.5 c 1296 | 486.194 640.013 486.75 641.75 484.5 645.5 c 1297 | 482.39 649.016 481.306 648.011 477.5 647.25 c 1298 | 475 646.75 474.784 644.479 475.25 640.75 c 1299 | 475.5 638.75 474 642.25 472.5 644.5 c 1300 | 471 646.75 469.25 645.5 466.5 645.5 c 1301 | 463.75 645.5 463.25 641.003 463.5 635.5 c 1302 | 463.511 635.25 463 626.25 y 1303 | 449.75 627.25 l 1304 | 459.25 618.5 465.606 612.863 468.25 597 c 1305 | 468.75 594 468 592.25 470 592.75 C 1306 | 459.719 593.497 459.195 585.398 461 586 c 1307 | 466.25 587.75 471.75 589.25 476.75 587 c 1308 | 481.75 584.75 486.25 584.25 489.5 586.25 C 1309 | 490.25 582.75 492 578.75 493.5 571.5 c 1310 | b 1311 | 0 g 1312 | 486.25 592.5 m 1313 | 489 595.25 492.117 593.078 492.25 592.75 c 1314 | 494.972 586.028 477 591.75 467.25 593 c 1315 | S 1316 | 0.4 w 1317 | 470 592.75 m 1318 | 474.25 595.75 475 596 481.5 595.75 c 1319 | S 1320 | 1 J 1321 | 2.5 w 1322 | 477.75 630 m 1323 | 478.5 620.75 l 1324 | S 1325 | 479.25 617.5 m 1326 | 480 610.5 l 1327 | S 1328 | 480.25 607.75 m 1329 | 481 600.25 481 600.5 v 1330 | S 1331 | 487.5 631.75 m 1332 | 487.75 623.5 l 1333 | S 1334 | 487.75 620.75 m 1335 | 487.75 612.5 l 1336 | S 1337 | 488 609.25 m 1338 | 488.25 609.25 487.75 602.5 y 1339 | S 1340 | 498 630.75 m 1341 | 497.25 623.75 l 1342 | S 1343 | 496.75 620.75 m 1344 | 495.5 612.5 l 1345 | S 1346 | 495.25 609.5 m 1347 | 493.75 602 l 1348 | S 1349 | 0 J 1350 | 0.2 w 1351 | 465.5 637.25 m 1352 | 464.5 629.75 461.25 628.75 464.75 617 c 1353 | S 1354 | 0.5 w 1355 | 502 589.25 m 1356 | 503.25 585 503.5 583.25 503.5 577 c 1357 | S 1358 | 1 g 1359 | 1 w 1360 | 521.949 86.694 m 1361 | 521.637 87.353 523.021 75.657 511.583 64.988 C 1362 | 511.583 60.205 l 1363 | 519.089 68.299 528.083 73.713 521.949 86.694 c 1364 | f 1365 | 553.457 99.673 m 1366 | 553.091 100.449 554.713 86.67 541.309 74.1 C 1367 | 541.309 68.465 l 1368 | 550.105 78.001 560.646 84.379 553.457 99.673 c 1369 | f 1370 | 482.74 95.04 m 1371 | 482.429 95.699 483.812 84.003 472.375 73.334 C 1372 | 472.375 68.551 l 1373 | 479.881 76.645 488.875 82.059 482.74 95.04 c 1374 | f 1375 | 450.924 87.63 m 1376 | 450.69 88.028 451.731 80.968 443.129 74.528 C 1377 | 443.129 71.641 l 1378 | 448.774 76.527 455.538 79.795 450.924 87.63 c 1379 | f 1380 | 0 g 1381 | 308 61.5 m 1382 | N 1383 | 3 w 1384 | 16.002 40.373 m 1385 | 568.002 40.127 L 1386 | 567.748 716.565 L 1387 | S 1388 | u 1389 | 15.815 40.248 m 1390 | 567.815 40.002 L 1391 | 567.748 716.565 L 1392 | 15.998 716.81 L 1393 | 15.815 40.248 L 1394 | s 1395 | U 1396 | %%Trailer 1397 | _E end 1398 | showpage 1399 | -------------------------------------------------------------------------------- /src/images/graphic.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-2.0 EPSF-2.0 2 | %%BoundingBox: 0 0 144 54 3 | %%BeginDocument: graphic.eps 4 | /$F2psDict 200 dict def 5 | $F2psDict begin 6 | $F2psDict /mtrx matrix put 7 | /col-1 {0 setgray} bind def 8 | /col0 {0.000 0.000 0.000 srgb} bind def 9 | /col1 {0.000 0.000 1.000 srgb} bind def 10 | /col2 {0.000 1.000 0.000 srgb} bind def 11 | /col3 {0.000 1.000 1.000 srgb} bind def 12 | /col4 {1.000 0.000 0.000 srgb} bind def 13 | /col5 {1.000 0.000 1.000 srgb} bind def 14 | /col6 {1.000 1.000 0.000 srgb} bind def 15 | /col7 {1.000 1.000 1.000 srgb} bind def 16 | /col8 {0.000 0.000 0.560 srgb} bind def 17 | /col9 {0.000 0.000 0.690 srgb} bind def 18 | /col10 {0.000 0.000 0.820 srgb} bind def 19 | /col11 {0.530 0.810 1.000 srgb} bind def 20 | /col12 {0.000 0.560 0.000 srgb} bind def 21 | /col13 {0.000 0.690 0.000 srgb} bind def 22 | /col14 {0.000 0.820 0.000 srgb} bind def 23 | /col15 {0.000 0.560 0.560 srgb} bind def 24 | /col16 {0.000 0.690 0.690 srgb} bind def 25 | /col17 {0.000 0.820 0.820 srgb} bind def 26 | /col18 {0.560 0.000 0.000 srgb} bind def 27 | /col19 {0.690 0.000 0.000 srgb} bind def 28 | /col20 {0.820 0.000 0.000 srgb} bind def 29 | /col21 {0.560 0.000 0.560 srgb} bind def 30 | /col22 {0.690 0.000 0.690 srgb} bind def 31 | /col23 {0.820 0.000 0.820 srgb} bind def 32 | /col24 {0.500 0.190 0.000 srgb} bind def 33 | /col25 {0.630 0.250 0.000 srgb} bind def 34 | /col26 {0.750 0.380 0.000 srgb} bind def 35 | /col27 {1.000 0.500 0.500 srgb} bind def 36 | /col28 {1.000 0.630 0.630 srgb} bind def 37 | /col29 {1.000 0.750 0.750 srgb} bind def 38 | /col30 {1.000 0.880 0.880 srgb} bind def 39 | /col31 {1.000 0.840 0.000 srgb} bind def 40 | 41 | end 42 | save 43 | -2.0 61.0 translate 44 | 1 -1 scale 45 | 46 | /cp {closepath} bind def 47 | /ef {eofill} bind def 48 | /gr {grestore} bind def 49 | /gs {gsave} bind def 50 | /sa {save} bind def 51 | /rs {restore} bind def 52 | /l {lineto} bind def 53 | /m {moveto} bind def 54 | /rm {rmoveto} bind def 55 | /n {newpath} bind def 56 | /s {stroke} bind def 57 | /sh {show} bind def 58 | /slc {setlinecap} bind def 59 | /slj {setlinejoin} bind def 60 | /slw {setlinewidth} bind def 61 | /srgb {setrgbcolor} bind def 62 | /rot {rotate} bind def 63 | /sc {scale} bind def 64 | /sd {setdash} bind def 65 | /ff {findfont} bind def 66 | /sf {setfont} bind def 67 | /scf {scalefont} bind def 68 | /sw {stringwidth} bind def 69 | /tr {translate} bind def 70 | /tnt {dup dup currentrgbcolor 71 | 4 -2 roll dup 1 exch sub 3 -1 roll mul add 72 | 4 -2 roll dup 1 exch sub 3 -1 roll mul add 73 | 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} 74 | bind def 75 | /shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul 76 | 4 -2 roll mul srgb} bind def 77 | /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def 78 | /$F2psEnd {$F2psEnteredState restore end} def 79 | 80 | $F2psBegin 81 | 10 setmiterlimit 82 | n 0 1048 m 0 0 l 2473 0 l 2473 1048 l cp clip 83 | 0.06000 0.06000 sc 84 | % Polyline 85 | 30.000 slw 86 | n 2400 975 m 75 975 l 75 150 l 2400 150 l cp gs col-1 s gr 87 | /Times-Bold ff 360.00 scf sf 88 | 1220 705 m 89 | gs 1 -1 sc (Graphic) dup sw pop 2 div neg 0 rm col-1 sh gr 90 | $F2psEnd 91 | rs 92 | %%EndDocument 93 | -------------------------------------------------------------------------------- /src/images/graphic2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/graphic2.pdf -------------------------------------------------------------------------------- /src/images/illusion.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-2.0 EPSF-2.0 2 | %%Title: illusion.eps 3 | %%Creator: fig2dev Version 3.2.3 Patchlevel 4 | %%CreationDate: Fri Mar 31 21:18:10 2000 5 | %%For: xszhang@AMath1 (Zhang Xiangsun) 6 | %%BoundingBox: 0 0 236 236 7 | %%Magnification: 1.0000 8 | %%EndComments 9 | % 10 | % This is the classic illusion of an 11 | % object that can't exist 12 | % 13 | /$F2psDict 200 dict def 14 | $F2psDict begin 15 | $F2psDict /mtrx matrix put 16 | /col-1 {0 setgray} bind def 17 | /col0 {0.000 0.000 0.000 srgb} bind def 18 | /col1 {0.000 0.000 1.000 srgb} bind def 19 | /col2 {0.000 1.000 0.000 srgb} bind def 20 | /col3 {0.000 1.000 1.000 srgb} bind def 21 | /col4 {1.000 0.000 0.000 srgb} bind def 22 | /col5 {1.000 0.000 1.000 srgb} bind def 23 | /col6 {1.000 1.000 0.000 srgb} bind def 24 | /col7 {1.000 1.000 1.000 srgb} bind def 25 | /col8 {0.000 0.000 0.560 srgb} bind def 26 | /col9 {0.000 0.000 0.690 srgb} bind def 27 | /col10 {0.000 0.000 0.820 srgb} bind def 28 | /col11 {0.530 0.810 1.000 srgb} bind def 29 | /col12 {0.000 0.560 0.000 srgb} bind def 30 | /col13 {0.000 0.690 0.000 srgb} bind def 31 | /col14 {0.000 0.820 0.000 srgb} bind def 32 | /col15 {0.000 0.560 0.560 srgb} bind def 33 | /col16 {0.000 0.690 0.690 srgb} bind def 34 | /col17 {0.000 0.820 0.820 srgb} bind def 35 | /col18 {0.560 0.000 0.000 srgb} bind def 36 | /col19 {0.690 0.000 0.000 srgb} bind def 37 | /col20 {0.820 0.000 0.000 srgb} bind def 38 | /col21 {0.560 0.000 0.560 srgb} bind def 39 | /col22 {0.690 0.000 0.690 srgb} bind def 40 | /col23 {0.820 0.000 0.820 srgb} bind def 41 | /col24 {0.500 0.190 0.000 srgb} bind def 42 | /col25 {0.630 0.250 0.000 srgb} bind def 43 | /col26 {0.750 0.380 0.000 srgb} bind def 44 | /col27 {1.000 0.500 0.500 srgb} bind def 45 | /col28 {1.000 0.630 0.630 srgb} bind def 46 | /col29 {1.000 0.750 0.750 srgb} bind def 47 | /col30 {1.000 0.880 0.880 srgb} bind def 48 | /col31 {1.000 0.840 0.000 srgb} bind def 49 | 50 | end 51 | save 52 | newpath 0 236 moveto 0 0 lineto 236 0 lineto 236 236 lineto closepath clip newpath 53 | -26.0 262.0 translate 54 | 1 -1 scale 55 | 56 | /cp {closepath} bind def 57 | /ef {eofill} bind def 58 | /gr {grestore} bind def 59 | /gs {gsave} bind def 60 | /sa {save} bind def 61 | /rs {restore} bind def 62 | /l {lineto} bind def 63 | /m {moveto} bind def 64 | /rm {rmoveto} bind def 65 | /n {newpath} bind def 66 | /s {stroke} bind def 67 | /sh {show} bind def 68 | /slc {setlinecap} bind def 69 | /slj {setlinejoin} bind def 70 | /slw {setlinewidth} bind def 71 | /srgb {setrgbcolor} bind def 72 | /rot {rotate} bind def 73 | /sc {scale} bind def 74 | /sd {setdash} bind def 75 | /ff {findfont} bind def 76 | /sf {setfont} bind def 77 | /scf {scalefont} bind def 78 | /sw {stringwidth} bind def 79 | /tr {translate} bind def 80 | /tnt {dup dup currentrgbcolor 81 | 4 -2 roll dup 1 exch sub 3 -1 roll mul add 82 | 4 -2 roll dup 1 exch sub 3 -1 roll mul add 83 | 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} 84 | bind def 85 | /shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul 86 | 4 -2 roll mul srgb} bind def 87 | /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def 88 | /$F2psEnd {$F2psEnteredState restore end} def 89 | 90 | $F2psBegin 91 | %%Page: 1 1 92 | 10 setmiterlimit 93 | 0.06000 0.06000 sc 94 | % Polyline 95 | 2 slj 96 | 7.500 slw 97 | n 1950 1350 m 4350 1350 l 4350 3150 l 3450 3150 l 3450 2850 l 4050 2850 l 98 | 4050 1650 l 1950 1650 l 99 | cp gs col31 1.00 shd ef gr gs col-1 s gr 100 | % Polyline 101 | n 450 1650 m 750 1350 l 1350 1350 l 1350 1650 l 102 | cp gs col31 1.00 shd ef gr gs col-1 s gr 103 | % Polyline 104 | n 750 3150 m 1050 2850 l 2850 2850 l 2850 3150 l 105 | cp gs col31 1.00 shd ef gr gs col-1 s gr 106 | % Polyline 107 | n 750 3150 m 750 1950 l 1050 1950 l 1050 2850 l 108 | cp gs col31 1.00 shd ef gr gs col-1 s gr 109 | % Polyline 110 | n 3750 1950 m 4050 1650 l 4050 2850 l 3750 2850 l 111 | cp gs col28 1.00 shd ef gr gs col-1 s gr 112 | % Polyline 113 | n 1950 1950 m 1950 1650 l 4050 1650 l 3750 1950 l 114 | cp gs col28 1.00 shd ef gr gs col-1 s gr 115 | % Polyline 116 | n 1350 1650 m 1350 1950 l 750 1950 l 750 3150 l 2850 3150 l 2850 3450 l 117 | 450 3450 l 450 1650 l 118 | cp gs col28 1.00 shd ef gr gs col-1 s gr 119 | % Polyline 120 | n 4350 3150 m 4050 3450 l 3450 3450 l 3450 3150 l 121 | cp gs col28 1.00 shd ef gr gs col-1 s gr 122 | % Polyline 123 | n 3450 1950 m 3450 4350 l 1650 4350 l 1650 3450 l 1950 3450 l 1950 4050 l 124 | 3150 4050 l 3150 1950 l 125 | cp gs col23 1.00 shd ef gr gs col-1 s gr 126 | % Polyline 127 | n 3150 450 m 3450 750 l 3450 1350 l 3150 1350 l 128 | cp gs col23 1.00 shd ef gr gs col-1 s gr 129 | % Polyline 130 | n 1650 750 m 1950 1050 l 1950 2850 l 1650 2850 l 131 | cp gs col23 1.00 shd ef gr gs col-1 s gr 132 | % Polyline 133 | n 1650 750 m 2850 750 l 2850 1050 l 1950 1050 l 134 | cp gs col23 1.00 shd ef gr gs col-1 s gr 135 | % Polyline 136 | n 2850 1950 m 3150 1950 l 3150 4050 l 2850 3750 l 137 | cp gs col11 1.00 shd ef gr gs col-1 s gr 138 | % Polyline 139 | n 3150 1350 m 2850 1350 l 2850 750 l 1650 750 l 1650 2850 l 1350 2850 l 140 | 1350 450 l 3150 450 l 141 | cp gs col11 1.00 shd ef gr gs col-1 s gr 142 | % Polyline 143 | n 2850 3750 m 3150 4050 l 1950 4050 l 1950 3750 l 144 | cp gs col11 1.00 shd ef gr gs col-1 s gr 145 | % Polyline 146 | n 1650 4350 m 1350 4050 l 1350 3450 l 1650 3450 l 147 | cp gs col11 1.00 shd ef gr gs col-1 s gr 148 | $F2psEnd 149 | rs 150 | -------------------------------------------------------------------------------- /src/images/latex-box.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/latex-box.pdf -------------------------------------------------------------------------------- /src/images/left.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-2.0 EPSF-2.0 2 | %%BoundingBox: 198 393 397 449 3 | %%HiResBoundingBox: 198.000000 393.000000 396.500000 449.000000 4 | %XpdfVersion: 3.04 5 | %%Creator: XeTeX output 2016.11.01:1404 6 | %%LanguageLevel: 2 7 | %%DocumentMedia: plain 595 842 0 () () 8 | %%EndComments 9 | % EPSF created by ps2eps 1.68 10 | %%BeginProlog 11 | save 12 | countdictstack 13 | mark 14 | newpath 15 | /showpage {} def 16 | /setpagedevice {pop} def 17 | %%EndProlog 18 | %%Page 1 1 19 | %%BeginDefaults 20 | %%PageMedia: plain 21 | %%EndDefaults 22 | %%BeginProlog 23 | %%BeginResource: procset xpdf 3.04 0 24 | %%Copyright: Copyright 1996-2014 Glyph & Cog, LLC 25 | /xpdf 75 dict def xpdf begin 26 | % PDF special state 27 | /pdfDictSize 15 def 28 | /pdfSetup { 29 | /pdfDuplex exch def 30 | /setpagedevice where { 31 | pop 2 dict begin 32 | /Policies 1 dict dup begin /PageSize 6 def end def 33 | pdfDuplex { /Duplex true def } if 34 | currentdict end setpagedevice 35 | } if 36 | /pdfPageW 0 def 37 | /pdfPageH 0 def 38 | } def 39 | /pdfSetupPaper { 40 | 2 copy pdfPageH ne exch pdfPageW ne or { 41 | /pdfPageH exch def 42 | /pdfPageW exch def 43 | /setpagedevice where { 44 | pop 3 dict begin 45 | /PageSize [pdfPageW pdfPageH] def 46 | pdfDuplex { /Duplex true def } if 47 | /ImagingBBox null def 48 | currentdict end setpagedevice 49 | } if 50 | } { 51 | pop pop 52 | } ifelse 53 | } def 54 | /pdfStartPage { 55 | pdfDictSize dict begin 56 | /pdfFillCS [] def 57 | /pdfFillXform {} def 58 | /pdfStrokeCS [] def 59 | /pdfStrokeXform {} def 60 | /pdfFill [0] def 61 | /pdfStroke [0] def 62 | /pdfFillOP false def 63 | /pdfStrokeOP false def 64 | /pdfLastFill false def 65 | /pdfLastStroke false def 66 | /pdfTextMat [1 0 0 1 0 0] def 67 | /pdfFontSize 0 def 68 | /pdfCharSpacing 0 def 69 | /pdfTextRender 0 def 70 | /pdfTextRise 0 def 71 | /pdfWordSpacing 0 def 72 | /pdfHorizScaling 1 def 73 | /pdfTextClipPath [] def 74 | } def 75 | /pdfEndPage { end } def 76 | % PDF color state 77 | /cs { /pdfFillXform exch def dup /pdfFillCS exch def 78 | setcolorspace } def 79 | /CS { /pdfStrokeXform exch def dup /pdfStrokeCS exch def 80 | setcolorspace } def 81 | /sc { pdfLastFill not { pdfFillCS setcolorspace } if 82 | dup /pdfFill exch def aload pop pdfFillXform setcolor 83 | /pdfLastFill true def /pdfLastStroke false def } def 84 | /SC { pdfLastStroke not { pdfStrokeCS setcolorspace } if 85 | dup /pdfStroke exch def aload pop pdfStrokeXform setcolor 86 | /pdfLastStroke true def /pdfLastFill false def } def 87 | /op { /pdfFillOP exch def 88 | pdfLastFill { pdfFillOP setoverprint } if } def 89 | /OP { /pdfStrokeOP exch def 90 | pdfLastStroke { pdfStrokeOP setoverprint } if } def 91 | /fCol { 92 | pdfLastFill not { 93 | pdfFillCS setcolorspace 94 | pdfFill aload pop pdfFillXform setcolor 95 | pdfFillOP setoverprint 96 | /pdfLastFill true def /pdfLastStroke false def 97 | } if 98 | } def 99 | /sCol { 100 | pdfLastStroke not { 101 | pdfStrokeCS setcolorspace 102 | pdfStroke aload pop pdfStrokeXform setcolor 103 | pdfStrokeOP setoverprint 104 | /pdfLastStroke true def /pdfLastFill false def 105 | } if 106 | } def 107 | % build a font 108 | /pdfMakeFont { 109 | 4 3 roll findfont 110 | 4 2 roll matrix scale makefont 111 | dup length dict begin 112 | { 1 index /FID ne { def } { pop pop } ifelse } forall 113 | /Encoding exch def 114 | currentdict 115 | end 116 | definefont pop 117 | } def 118 | /pdfMakeFont16 { 119 | exch findfont 120 | dup length dict begin 121 | { 1 index /FID ne { def } { pop pop } ifelse } forall 122 | /WMode exch def 123 | currentdict 124 | end 125 | definefont pop 126 | } def 127 | % graphics state operators 128 | /q { gsave pdfDictSize dict begin } def 129 | /Q { 130 | end grestore 131 | /pdfLastFill where { 132 | pop 133 | pdfLastFill { 134 | pdfFillOP setoverprint 135 | } { 136 | pdfStrokeOP setoverprint 137 | } ifelse 138 | } if 139 | } def 140 | /cm { concat } def 141 | /d { setdash } def 142 | /i { setflat } def 143 | /j { setlinejoin } def 144 | /J { setlinecap } def 145 | /M { setmiterlimit } def 146 | /w { setlinewidth } def 147 | % path segment operators 148 | /m { moveto } def 149 | /l { lineto } def 150 | /c { curveto } def 151 | /re { 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto 152 | neg 0 rlineto closepath } def 153 | /h { closepath } def 154 | % path painting operators 155 | /S { sCol stroke } def 156 | /Sf { fCol stroke } def 157 | /f { fCol fill } def 158 | /f* { fCol eofill } def 159 | % clipping operators 160 | /W { clip newpath } def 161 | /W* { eoclip newpath } def 162 | /Ws { strokepath clip newpath } def 163 | % text state operators 164 | /Tc { /pdfCharSpacing exch def } def 165 | /Tf { dup /pdfFontSize exch def 166 | dup pdfHorizScaling mul exch matrix scale 167 | pdfTextMat matrix concatmatrix dup 4 0 put dup 5 0 put 168 | exch findfont exch makefont setfont } def 169 | /Tr { /pdfTextRender exch def } def 170 | /Ts { /pdfTextRise exch def } def 171 | /Tw { /pdfWordSpacing exch def } def 172 | /Tz { /pdfHorizScaling exch def } def 173 | % text positioning operators 174 | /Td { pdfTextMat transform moveto } def 175 | /Tm { /pdfTextMat exch def } def 176 | % text string operators 177 | /xyshow where { 178 | pop 179 | /xyshow2 { 180 | dup length array 181 | 0 2 2 index length 1 sub { 182 | 2 index 1 index 2 copy get 3 1 roll 1 add get 183 | pdfTextMat dtransform 184 | 4 2 roll 2 copy 6 5 roll put 1 add 3 1 roll dup 4 2 roll put 185 | } for 186 | exch pop 187 | xyshow 188 | } def 189 | }{ 190 | /xyshow2 { 191 | currentfont /FontType get 0 eq { 192 | 0 2 3 index length 1 sub { 193 | currentpoint 4 index 3 index 2 getinterval show moveto 194 | 2 copy get 2 index 3 2 roll 1 add get 195 | pdfTextMat dtransform rmoveto 196 | } for 197 | } { 198 | 0 1 3 index length 1 sub { 199 | currentpoint 4 index 3 index 1 getinterval show moveto 200 | 2 copy 2 mul get 2 index 3 2 roll 2 mul 1 add get 201 | pdfTextMat dtransform rmoveto 202 | } for 203 | } ifelse 204 | pop pop 205 | } def 206 | } ifelse 207 | /cshow where { 208 | pop 209 | /xycp { 210 | 0 3 2 roll 211 | { 212 | pop pop currentpoint 3 2 roll 213 | 1 string dup 0 4 3 roll put false charpath moveto 214 | 2 copy get 2 index 2 index 1 add get 215 | pdfTextMat dtransform rmoveto 216 | 2 add 217 | } exch cshow 218 | pop pop 219 | } def 220 | }{ 221 | /xycp { 222 | currentfont /FontType get 0 eq { 223 | 0 2 3 index length 1 sub { 224 | currentpoint 4 index 3 index 2 getinterval false charpath moveto 225 | 2 copy get 2 index 3 2 roll 1 add get 226 | pdfTextMat dtransform rmoveto 227 | } for 228 | } { 229 | 0 1 3 index length 1 sub { 230 | currentpoint 4 index 3 index 1 getinterval false charpath moveto 231 | 2 copy 2 mul get 2 index 3 2 roll 2 mul 1 add get 232 | pdfTextMat dtransform rmoveto 233 | } for 234 | } ifelse 235 | pop pop 236 | } def 237 | } ifelse 238 | /Tj { 239 | fCol 240 | 0 pdfTextRise pdfTextMat dtransform rmoveto 241 | currentpoint 4 2 roll 242 | pdfTextRender 1 and 0 eq { 243 | 2 copy xyshow2 244 | } if 245 | pdfTextRender 3 and dup 1 eq exch 2 eq or { 246 | 3 index 3 index moveto 247 | 2 copy 248 | currentfont /FontType get 3 eq { fCol } { sCol } ifelse 249 | xycp currentpoint stroke moveto 250 | } if 251 | pdfTextRender 4 and 0 ne { 252 | 4 2 roll moveto xycp 253 | /pdfTextClipPath [ pdfTextClipPath aload pop 254 | {/moveto cvx} 255 | {/lineto cvx} 256 | {/curveto cvx} 257 | {/closepath cvx} 258 | pathforall ] def 259 | currentpoint newpath moveto 260 | } { 261 | pop pop pop pop 262 | } ifelse 263 | 0 pdfTextRise neg pdfTextMat dtransform rmoveto 264 | } def 265 | /TJm { 0.001 mul pdfFontSize mul pdfHorizScaling mul neg 0 266 | pdfTextMat dtransform rmoveto } def 267 | /TJmV { 0.001 mul pdfFontSize mul neg 0 exch 268 | pdfTextMat dtransform rmoveto } def 269 | /Tclip { pdfTextClipPath cvx exec clip newpath 270 | /pdfTextClipPath [] def } def 271 | % Level 2/3 image operators 272 | /pdfImBuf 100 string def 273 | /pdfImStr { 274 | 2 copy exch length lt { 275 | 2 copy get exch 1 add exch 276 | } { 277 | () 278 | } ifelse 279 | } def 280 | /skipEOD { 281 | { currentfile pdfImBuf readline 282 | not { pop exit } if 283 | (%-EOD-) eq { exit } if } loop 284 | } def 285 | /pdfIm { image skipEOD } def 286 | /pdfImM { fCol imagemask skipEOD } def 287 | /pr { 288 | 4 2 roll exch 5 index div exch 4 index div moveto 289 | exch 3 index div dup 0 rlineto 290 | exch 2 index div 0 exch rlineto 291 | neg 0 rlineto 292 | closepath 293 | } def 294 | /pdfImClip { gsave clip } def 295 | /pdfImClipEnd { grestore } def 296 | % shading operators 297 | /colordelta { 298 | false 0 1 3 index length 1 sub { 299 | dup 4 index exch get 3 index 3 2 roll get sub abs 0.004 gt { 300 | pop true 301 | } if 302 | } for 303 | exch pop exch pop 304 | } def 305 | /funcCol { func n array astore } def 306 | /funcSH { 307 | dup 0 eq { 308 | true 309 | } { 310 | dup 6 eq { 311 | false 312 | } { 313 | 4 index 4 index funcCol dup 314 | 6 index 4 index funcCol dup 315 | 3 1 roll colordelta 3 1 roll 316 | 5 index 5 index funcCol dup 317 | 3 1 roll colordelta 3 1 roll 318 | 6 index 8 index funcCol dup 319 | 3 1 roll colordelta 3 1 roll 320 | colordelta or or or 321 | } ifelse 322 | } ifelse 323 | { 324 | 1 add 325 | 4 index 3 index add 0.5 mul exch 4 index 3 index add 0.5 mul exch 326 | 6 index 6 index 4 index 4 index 4 index funcSH 327 | 2 index 6 index 6 index 4 index 4 index funcSH 328 | 6 index 2 index 4 index 6 index 4 index funcSH 329 | 5 3 roll 3 2 roll funcSH pop pop 330 | } { 331 | pop 3 index 2 index add 0.5 mul 3 index 2 index add 0.5 mul 332 | funcCol sc 333 | dup 4 index exch mat transform m 334 | 3 index 3 index mat transform l 335 | 1 index 3 index mat transform l 336 | mat transform l pop pop h f* 337 | } ifelse 338 | } def 339 | /axialCol { 340 | dup 0 lt { 341 | pop t0 342 | } { 343 | dup 1 gt { 344 | pop t1 345 | } { 346 | dt mul t0 add 347 | } ifelse 348 | } ifelse 349 | func n array astore 350 | } def 351 | /axialSH { 352 | dup 2 lt { 353 | true 354 | } { 355 | dup 8 eq { 356 | false 357 | } { 358 | 2 index axialCol 2 index axialCol colordelta 359 | } ifelse 360 | } ifelse 361 | { 362 | 1 add 3 1 roll 2 copy add 0.5 mul 363 | dup 4 3 roll exch 4 index axialSH 364 | exch 3 2 roll axialSH 365 | } { 366 | pop 2 copy add 0.5 mul 367 | axialCol sc 368 | exch dup dx mul x0 add exch dy mul y0 add 369 | 3 2 roll dup dx mul x0 add exch dy mul y0 add 370 | dx abs dy abs ge { 371 | 2 copy yMin sub dy mul dx div add yMin m 372 | yMax sub dy mul dx div add yMax l 373 | 2 copy yMax sub dy mul dx div add yMax l 374 | yMin sub dy mul dx div add yMin l 375 | h f* 376 | } { 377 | exch 2 copy xMin sub dx mul dy div add xMin exch m 378 | xMax sub dx mul dy div add xMax exch l 379 | exch 2 copy xMax sub dx mul dy div add xMax exch l 380 | xMin sub dx mul dy div add xMin exch l 381 | h f* 382 | } ifelse 383 | } ifelse 384 | } def 385 | /radialCol { 386 | dup t0 lt { 387 | pop t0 388 | } { 389 | dup t1 gt { 390 | pop t1 391 | } if 392 | } ifelse 393 | func n array astore 394 | } def 395 | /radialSH { 396 | dup 0 eq { 397 | true 398 | } { 399 | dup 8 eq { 400 | false 401 | } { 402 | 2 index dt mul t0 add radialCol 403 | 2 index dt mul t0 add radialCol colordelta 404 | } ifelse 405 | } ifelse 406 | { 407 | 1 add 3 1 roll 2 copy add 0.5 mul 408 | dup 4 3 roll exch 4 index radialSH 409 | exch 3 2 roll radialSH 410 | } { 411 | pop 2 copy add 0.5 mul dt mul t0 add 412 | radialCol sc 413 | encl { 414 | exch dup dx mul x0 add exch dup dy mul y0 add exch dr mul r0 add 415 | 0 360 arc h 416 | dup dx mul x0 add exch dup dy mul y0 add exch dr mul r0 add 417 | 360 0 arcn h f 418 | } { 419 | 2 copy 420 | dup dx mul x0 add exch dup dy mul y0 add exch dr mul r0 add 421 | a1 a2 arcn 422 | dup dx mul x0 add exch dup dy mul y0 add exch dr mul r0 add 423 | a2 a1 arcn h 424 | dup dx mul x0 add exch dup dy mul y0 add exch dr mul r0 add 425 | a1 a2 arc 426 | dup dx mul x0 add exch dup dy mul y0 add exch dr mul r0 add 427 | a2 a1 arc h f 428 | } ifelse 429 | } ifelse 430 | } def 431 | end 432 | %%EndResource 433 | %%EndProlog 434 | %%BeginSetup 435 | xpdf begin 436 | %%BeginResource: font HEDYMW+CMR10 437 | %!FontType1-1.0: HEDYMW+CMR10003.002 438 | 12 dict begin 439 | /FontInfo 10 dict dup begin 440 | /version (003.002) readonly def 441 | /Notice (Copyright \(c\) 1997, 2009 American Mathematical Society \(\), with Reserved Font Name CMR10.) readonly def 443 | /FullName (CMR10) readonly def 444 | /FamilyName (Computer Modern) readonly def 445 | /Weight (Medium) readonly def 446 | /isFixedPitch false def 447 | /ItalicAngle 0 def 448 | /UnderlinePosition -100 def 449 | /UnderlineThickness 50 def 450 | end readonly def 451 | /FontName /HEDYMW+CMR10 def 452 | /PaintType 0 def 453 | /FontType 1 def 454 | /FontMatrix [0.001 0 0 0.001 0 0] readonly def 455 | /FontBBox [-40 -250 1009 750] readonly def 456 | /StrokeWidth 0 def 457 | /Encoding 256 array 458 | 0 1 255 {1 index exch /.notdef put} for 459 | dup 76 /L put 460 | dup 101 /e put 461 | dup 102 /f put 462 | dup 116 /t put 463 | readonly def 464 | currentdict end 465 | currentfile eexec 466 | 5AA4F71255501637F1A431BAB555283D093E1B588B45B0281559110D21315C62 467 | BD638C6B34BA54AA75227715D9947EBCD51A104CAEA657499E94138F5645BF68 468 | 368BB1B1EC8E4776F067FFF2CE9B89FB7E63A7DB304498C1036D399C47A4CB79 469 | BD517EDB02BEB90195FD7DDAF3E839BCE2DB156D9337DBB2305A465B3E0FFB97 470 | 1985C79DC71C47E26F9F0F042B2CDEE97B679358059256FB93D662D43C7ECB5B 471 | 1A564DFCECB963478373C69F52172F071E0AA6082A3E10D9E1CE2851CFA210EE 472 | 7BD5FCB1AAE15E89D1FB339D587D218B89C18A32F47C7451A80CB1FC07CF5EF6 473 | FA6B0AF338BD4E48F07258C8AB349EE790EF474E6D540CD5017BDA227D234CDE 474 | C5B56DC44D44AB50DFB075E5E1022F04510349EA668084E7A051605C83646AF5 475 | 902E437867493A954EAEF35981EA89706F0AC717DFC491968979A7EF87F475E4 476 | 8F22A3A7D7750B755878A9B88483EDC2409C0D58BE116764B583FF78D1FBF3AD 477 | 289831C79680B7183956FD64718B7BBE2D8DF65EB9DAA46A90706B45496ACFE9 478 | 78439069B8944845B613846CACD0BD317E15DCE9A145DC2777BAD280FB7F9C23 479 | C6D9F422E80D6A0BA68E5740FF598E527B7A6B882FDF42F16C0D013689B763FD 480 | 4393059522A5D2ADF7B532643F7BC88CF5841545B6CA99E3730EDA82A76C1B3C 481 | 15F3A8AA465F623C540DB3E8FDC2668B60E24458A2222C55FD953495B9BDFBBA 482 | F39BAD5D4FBFCEA174E41495EED0BF63F1E209908C38422454DBF5E966C3B010 483 | 9A400B5CE0D45D335424B1924DFF7FF7C9DCAC4D8725A4460F0F673026E1F3D6 484 | 934E8E887C7BB8A66EA97B031039966C64CD75FFFEEA3234B585E8EE9FF4BB4E 485 | C4160D5C33A6637587FEDF5794BC4B59603024CC98BA5212B6A27B8624498D01 486 | BC4A5AD6C8A79CA996153E0AAC22CFFAB813654322F739EF4CA381020BDBA9E2 487 | 06D350BA00AA121F6F8F354B2B0BD4A8E83466DDF11E55357CE7E66947219FCA 488 | 625C28EF2E6E821F5E1424F910EFB3023B55F95BB7983368BC3653CF7795457B 489 | 62B1E6ED55653F12B6561BB80316531114F54AEA1384E46D28378C807D3C53FF 490 | 9B9F3001509D8FB2A6C73B1BBA6FFEC79027EC28E6550A0642A993CCBC8C1022 491 | B1A7C9A3C8DC023D23B6CD0AC2E73461F3D8674AE7FEDABB918F7927CD2E40A4 492 | 8A0E6B38B10DF7697288466DADA09BC7C238CFDE923C75184A03471ADAAEE232 493 | 544CA09BD5E5D91524952C2FF92DB0CE0A94D531555C612C5C5C536A9C1101FA 494 | E223706419DAF97050DD29A8490938805CD39F8C36B4486BB3872CEBEB239A76 495 | 897216DE802B927C577ECFFBDD996FAADAA2C99209216EED6546E82923F18190 496 | A98D49CB43730DB046894BCC5F56DA4F535D16A0CBE6F115A8F631CE172738DE 497 | 4A33BF9EFAD53B882CC26BF96F14056082064CC69807D9FE0385CED55A3BD6E4 498 | 2B76CB1E8D 499 | 0000000000000000000000000000000000000000000000000000000000000000 500 | 0000000000000000000000000000000000000000000000000000000000000000 501 | 0000000000000000000000000000000000000000000000000000000000000000 502 | 0000000000000000000000000000000000000000000000000000000000000000 503 | 0000000000000000000000000000000000000000000000000000000000000000 504 | 0000000000000000000000000000000000000000000000000000000000000000 505 | 0000000000000000000000000000000000000000000000000000000000000000 506 | 0000000000000000000000000000000000000000000000000000000000000000 507 | cleartomark 508 | %%EndResource 509 | /F4_0 /HEDYMW+CMR10 1 1 510 | [ /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 511 | /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 512 | /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 513 | /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 514 | /space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright 515 | /parenleft/parenright/asterisk/plus/comma/hyphen/period/slash 516 | /zero/one/two/three/four/five/six/seven 517 | /eight/nine/colon/semicolon/less/equal/greater/question 518 | /at/A/B/C/D/E/F/G 519 | /H/I/J/K/L/M/N/O 520 | /P/Q/R/S/T/U/V/W 521 | /X/Y/Z/bracketleft/backslash/bracketright/asciicircum/underscore 522 | /quoteleft/a/b/c/d/e/f/g 523 | /h/i/j/k/l/m/n/o 524 | /p/q/r/s/t/u/v/w 525 | /x/y/z/braceleft/bar/braceright/asciitilde/.notdef 526 | /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 527 | /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 528 | /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 529 | /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 530 | /.notdef/exclamdown/cent/sterling/fraction/yen/florin/section 531 | /currency/quotesingle/quotedblleft/guillemotleft/guilsinglleft/guilsinglright/fi/fl 532 | /.notdef/endash/dagger/daggerdbl/periodcentered/.notdef/paragraph/bullet 533 | /quotesinglbase/quotedblbase/quotedblright/guillemotright/ellipsis/perthousand/.notdef/questiondown 534 | /.notdef/grave/acute/circumflex/tilde/macron/breve/dotaccent 535 | /dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut/ogonek/caron 536 | /emdash/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 537 | /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 538 | /.notdef/AE/.notdef/ordfeminine/.notdef/.notdef/.notdef/.notdef 539 | /Lslash/Oslash/OE/ordmasculine/.notdef/.notdef/.notdef/.notdef 540 | /.notdef/ae/.notdef/.notdef/.notdef/dotlessi/.notdef/.notdef 541 | /lslash/oslash/oe/germandbls/.notdef/.notdef/.notdef/.notdef] 542 | pdfMakeFont 543 | false pdfSetup 544 | 595 842 pdfSetupPaper 545 | end 546 | %%EndSetup 547 | %%Page: 1 1 548 | %%BeginPageSetup 549 | xpdf begin 550 | %%PageOrientation: Portrait 551 | pdfStartPage 552 | 198 393 translate 553 | 0 0 199 56 re W 554 | %%EndPageSetup 555 | [] 0 d 556 | 1 i 557 | 0 j 558 | 0 J 559 | 10 M 560 | 1 w 561 | /DeviceGray {} cs 562 | [0] sc 563 | /DeviceGray {} CS 564 | [0] SC 565 | false op 566 | false OP 567 | {} settransfer 568 | 0 0 198.45 55.91 re 569 | W 570 | q 571 | q 572 | [1 0 0 1 72 -16.089] cm 573 | q 574 | [3.32294 0 0 3.32294 167.252 -83.087] cm 575 | q 576 | 0.9963 w 577 | -72 46.174 m 578 | -12.279 46.174 l 579 | S 580 | Q 581 | q 582 | 0.9963 w 583 | -71.502 30.842 m 584 | -71.502 45.675 l 585 | S 586 | Q 587 | [1 0 0 1 0 0] Tm 588 | 0 0 Td 589 | -68.015 35.768 Td 590 | /F4_0 9.9626 Tf 591 | (Left) 592 | [6.226625 593 | 0 594 | 4.427379 595 | 0 596 | 3.044571 597 | 0 598 | 3.874455 599 | 0] Tj 600 | q 601 | 0.9963 w 602 | -12.778 30.842 m 603 | -12.778 45.675 l 604 | S 605 | Q 606 | q 607 | 0.9963 w 608 | -72 30.344 m 609 | -12.279 30.344 l 610 | S 611 | Q 612 | Q 613 | Q 614 | Q 615 | showpage 616 | %%PageTrailer 617 | pdfEndPage 618 | end 619 | %%Trailer 620 | %%DocumentSuppliedResources: 621 | %%+ font HEDYMW+CMR10 622 | %%Trailer 623 | cleartomark 624 | countdictstack 625 | exch sub { end } repeat 626 | restore 627 | %%EOF 628 | -------------------------------------------------------------------------------- /src/images/left.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/left.pdf -------------------------------------------------------------------------------- /src/images/leftright.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/leftright.pdf -------------------------------------------------------------------------------- /src/images/leftright.tex: -------------------------------------------------------------------------------- 1 | \documentclass{standalone} 2 | \usepackage{graphicx} 3 | \setlength{\fboxrule}{1pt} 4 | \setlength{\fboxsep}{3pt} 5 | \begin{document} 6 | \resizebox{7cm}{!}{\fbox{\mbox{Left}\quad\phantom{Right}}} 7 | %test: 8 | %\makebox[0pt][l]{\includegraphics{left.eps}}\includegraphics{right.eps} 9 | \end{document} -------------------------------------------------------------------------------- /src/images/mass.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/mass.pdf -------------------------------------------------------------------------------- /src/images/orig-point.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-2.0 EPSF-2.0 2 | %%Title: orig-point.eps 3 | %%Creator: fig2dev Version 3.2.3 Patchlevel 4 | %%CreationDate: Sat Mar 25 22:06:14 2000 5 | %%For: xszhang@AMath1 (Zhang Xiangsun) 6 | %%BoundingBox: 0 0 412 289 7 | %%Magnification: 1.0000 8 | %%EndComments 9 | /$F2psDict 200 dict def 10 | $F2psDict begin 11 | $F2psDict /mtrx matrix put 12 | /col-1 {0 setgray} bind def 13 | /col0 {0.000 0.000 0.000 srgb} bind def 14 | /col1 {0.000 0.000 1.000 srgb} bind def 15 | /col2 {0.000 1.000 0.000 srgb} bind def 16 | /col3 {0.000 1.000 1.000 srgb} bind def 17 | /col4 {1.000 0.000 0.000 srgb} bind def 18 | /col5 {1.000 0.000 1.000 srgb} bind def 19 | /col6 {1.000 1.000 0.000 srgb} bind def 20 | /col7 {1.000 1.000 1.000 srgb} bind def 21 | /col8 {0.000 0.000 0.560 srgb} bind def 22 | /col9 {0.000 0.000 0.690 srgb} bind def 23 | /col10 {0.000 0.000 0.820 srgb} bind def 24 | /col11 {0.530 0.810 1.000 srgb} bind def 25 | /col12 {0.000 0.560 0.000 srgb} bind def 26 | /col13 {0.000 0.690 0.000 srgb} bind def 27 | /col14 {0.000 0.820 0.000 srgb} bind def 28 | /col15 {0.000 0.560 0.560 srgb} bind def 29 | /col16 {0.000 0.690 0.690 srgb} bind def 30 | /col17 {0.000 0.820 0.820 srgb} bind def 31 | /col18 {0.560 0.000 0.000 srgb} bind def 32 | /col19 {0.690 0.000 0.000 srgb} bind def 33 | /col20 {0.820 0.000 0.000 srgb} bind def 34 | /col21 {0.560 0.000 0.560 srgb} bind def 35 | /col22 {0.690 0.000 0.690 srgb} bind def 36 | /col23 {0.820 0.000 0.820 srgb} bind def 37 | /col24 {0.500 0.190 0.000 srgb} bind def 38 | /col25 {0.630 0.250 0.000 srgb} bind def 39 | /col26 {0.750 0.380 0.000 srgb} bind def 40 | /col27 {1.000 0.500 0.500 srgb} bind def 41 | /col28 {1.000 0.630 0.630 srgb} bind def 42 | /col29 {1.000 0.750 0.750 srgb} bind def 43 | /col30 {1.000 0.880 0.880 srgb} bind def 44 | /col31 {1.000 0.840 0.000 srgb} bind def 45 | 46 | end 47 | save 48 | newpath 0 289 moveto 0 0 lineto 412 0 lineto 412 289 lineto closepath clip newpath 49 | -56.0 326.0 translate 50 | 1 -1 scale 51 | 52 | /cp {closepath} bind def 53 | /ef {eofill} bind def 54 | /gr {grestore} bind def 55 | /gs {gsave} bind def 56 | /sa {save} bind def 57 | /rs {restore} bind def 58 | /l {lineto} bind def 59 | /m {moveto} bind def 60 | /rm {rmoveto} bind def 61 | /n {newpath} bind def 62 | /s {stroke} bind def 63 | /sh {show} bind def 64 | /slc {setlinecap} bind def 65 | /slj {setlinejoin} bind def 66 | /slw {setlinewidth} bind def 67 | /srgb {setrgbcolor} bind def 68 | /rot {rotate} bind def 69 | /sc {scale} bind def 70 | /sd {setdash} bind def 71 | /ff {findfont} bind def 72 | /sf {setfont} bind def 73 | /scf {scalefont} bind def 74 | /sw {stringwidth} bind def 75 | /tr {translate} bind def 76 | /tnt {dup dup currentrgbcolor 77 | 4 -2 roll dup 1 exch sub 3 -1 roll mul add 78 | 4 -2 roll dup 1 exch sub 3 -1 roll mul add 79 | 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} 80 | bind def 81 | /shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul 82 | 4 -2 roll mul srgb} bind def 83 | /DrawEllipse { 84 | /endangle exch def 85 | /startangle exch def 86 | /yrad exch def 87 | /xrad exch def 88 | /y exch def 89 | /x exch def 90 | /savematrix mtrx currentmatrix def 91 | x y tr xrad yrad sc 0 0 1 startangle endangle arc 92 | closepath 93 | savematrix setmatrix 94 | } def 95 | 96 | /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def 97 | /$F2psEnd {$F2psEnteredState restore end} def 98 | 99 | $F2psBegin 100 | %%Page: 1 1 101 | 10 setmiterlimit 102 | 0.06000 0.06000 sc 103 | % Polyline 104 | 15.000 slw 105 | n 3000 1000 m 7000 1000 l 7000 5000 l 3000 5000 l 106 | cp gs col7 0.50 shd ef gr gs col0 s gr 107 | % Polyline 108 | [68] 0 sd 109 | n 3000 3000 m 110 | 7000 3000 l gs col0 s gr [] 0 sd 111 | % Ellipse 112 | n 3000 3780 100 100 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr 113 | 114 | % Polyline 115 | [68] 0 sd 116 | n 3000 3800 m 117 | 7000 3800 l gs col0 s gr [] 0 sd 118 | % Polyline 119 | [90] 0 sd 120 | n 5000 1000 m 121 | 5000 5000 l gs col0 s gr [] 0 sd 122 | % Polyline 123 | gs clippath 124 | 4255 2897 m 4337 2859 l 4228 2623 l 4282 2847 l 4146 2661 l cp 125 | eoclip 126 | n 4020 2280 m 127 | 4290 2865 l gs col0 s gr gr 128 | 129 | % arrowhead 130 | 7.500 slw 131 | n 4146 2661 m 4282 2847 l 4228 2623 l 4206 2683 l 4146 2661 l 132 | cp gs 0.00 setgray ef gr col0 s 133 | % Polyline 134 | 15.000 slw 135 | gs clippath 136 | 4932 2627 m 4965 2543 l 4722 2449 l 4916 2573 l 4689 2533 l cp 137 | eoclip 138 | n 4125 2265 m 139 | 4935 2580 l gs col0 s gr gr 140 | 141 | % arrowhead 142 | 7.500 slw 143 | n 4689 2533 m 4916 2573 l 4722 2449 l 4748 2507 l 4689 2533 l 144 | cp gs 0.00 setgray ef gr col0 s 145 | % Polyline 146 | 15.000 slw 147 | gs clippath 148 | 4059 3895 m 4003 3825 l 3800 3987 l 4004 3882 l 3856 4057 l cp 149 | eoclip 150 | n 3570 4230 m 151 | 4020 3870 l gs col0 s gr gr 152 | 153 | % arrowhead 154 | 7.500 slw 155 | n 3856 4057 m 4004 3882 l 3800 3987 l 3863 3994 l 3856 4057 l 156 | cp gs 0.00 setgray ef gr col0 s 157 | % Polyline 158 | 15.000 slw 159 | gs clippath 160 | 5053 3794 m 5002 3868 l 5215 4016 l 5056 3851 l 5266 3942 l cp 161 | eoclip 162 | n 5040 3840 m 163 | 5595 4225 l gs col0 s gr gr 164 | 165 | % arrowhead 166 | 7.500 slw 167 | n 5266 3942 m 5056 3851 l 5215 4016 l 5203 3953 l 5266 3942 l 168 | cp gs 0.00 setgray ef gr col0 s 169 | % Polyline 170 | 15.000 slw 171 | gs clippath 172 | 4954 2986 m 5027 3038 l 5179 2827 l 5012 2984 l 5106 2774 l cp 173 | eoclip 174 | n 5000 3000 m 175 | 5500 2300 l gs col0 s gr gr 176 | 177 | % arrowhead 178 | 7.500 slw 179 | n 5106 2774 m 5012 2984 l 5179 2827 l 5116 2837 l 5106 2774 l 180 | cp gs 0.00 setgray ef gr col0 s 181 | % Polyline 182 | 15.000 slw 183 | gs clippath 184 | 2872 3766 m 2914 3687 l 2683 3566 l 2862 3711 l 2641 3646 l cp 185 | eoclip 186 | n 2220 3375 m 187 | 2880 3720 l gs col0 s gr gr 188 | 189 | % arrowhead 190 | 7.500 slw 191 | n 2641 3646 m 2862 3711 l 2683 3566 l 2702 3627 l 2641 3646 l 192 | cp gs 0.00 setgray ef gr col0 s 193 | /Helvetica ff 270.00 scf sf 194 | 3210 4605 m 195 | gs 1 -1 sc (Baseline) col0 sh gr 196 | /Helvetica ff 270.00 scf sf 197 | 3225 2175 m 198 | gs 1 -1 sc (Centerlines) col0 sh gr 199 | /Courier-Bold ff 240.00 scf sf 200 | 4755 5430 m 201 | gs 1 -1 sc ([cb]) col0 sh gr 202 | /Helvetica ff 270.00 scf sf 203 | 945 3285 m 204 | gs 1 -1 sc (Reference) col0 sh gr 205 | /Helvetica ff 270.00 scf sf 206 | 1260 3585 m 207 | gs 1 -1 sc (Point) col0 sh gr 208 | /Courier-Bold ff 240.00 scf sf 209 | 2340 4080 m 210 | gs 1 -1 sc ([lB]) col0 sh gr 211 | /Courier-Bold ff 240.00 scf sf 212 | 2355 5415 m 213 | gs 1 -1 sc ([lb]) col0 sh gr 214 | /Courier-Bold ff 240.00 scf sf 215 | 5625 4425 m 216 | gs 1 -1 sc ([cB]) col0 sh gr 217 | /Courier-Bold ff 240.00 scf sf 218 | 5550 2400 m 219 | gs 1 -1 sc ([c]) col0 sh gr 220 | /Courier-Bold ff 240.00 scf sf 221 | 4725 825 m 222 | gs 1 -1 sc ([ct]) col0 sh gr 223 | /Courier-Bold ff 240.00 scf sf 224 | 2355 840 m 225 | gs 1 -1 sc ([lt]) col0 sh gr 226 | /Courier-Bold ff 240.00 scf sf 227 | 7140 825 m 228 | gs 1 -1 sc ([rt]) col0 sh gr 229 | /Courier-Bold ff 240.00 scf sf 230 | 7170 3060 m 231 | gs 1 -1 sc ([rc]) col0 sh gr 232 | /Courier-Bold ff 240.00 scf sf 233 | 7170 3840 m 234 | gs 1 -1 sc ([rB]) col0 sh gr 235 | /Courier-Bold ff 240.00 scf sf 236 | 7155 5355 m 237 | gs 1 -1 sc ([rb]) col0 sh gr 238 | /Courier-Bold ff 240.00 scf sf 239 | 2340 3060 m 240 | gs 1 -1 sc ([lc]) col0 sh gr 241 | $F2psEnd 242 | rs 243 | -------------------------------------------------------------------------------- /src/images/orig-point.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/orig-point.pdf -------------------------------------------------------------------------------- /src/images/pend.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-2.0 EPSF-2.0 2 | %%Title: pend.eps 3 | %%Creator: fig2dev Version 3.2.3 Patchlevel 4 | %%CreationDate: Sat Mar 25 22:36:15 2000 5 | %%For: xszhang@AMath1 (Zhang Xiangsun) 6 | %%BoundingBox: 0 0 272 217 7 | %%Magnification: 1.0000 8 | %%EndComments 9 | /$F2psDict 200 dict def 10 | $F2psDict begin 11 | $F2psDict /mtrx matrix put 12 | /col-1 {0 setgray} bind def 13 | /col0 {0.000 0.000 0.000 srgb} bind def 14 | /col1 {0.000 0.000 1.000 srgb} bind def 15 | /col2 {0.000 1.000 0.000 srgb} bind def 16 | /col3 {0.000 1.000 1.000 srgb} bind def 17 | /col4 {1.000 0.000 0.000 srgb} bind def 18 | /col5 {1.000 0.000 1.000 srgb} bind def 19 | /col6 {1.000 1.000 0.000 srgb} bind def 20 | /col7 {1.000 1.000 1.000 srgb} bind def 21 | /col8 {0.000 0.000 0.560 srgb} bind def 22 | /col9 {0.000 0.000 0.690 srgb} bind def 23 | /col10 {0.000 0.000 0.820 srgb} bind def 24 | /col11 {0.530 0.810 1.000 srgb} bind def 25 | /col12 {0.000 0.560 0.000 srgb} bind def 26 | /col13 {0.000 0.690 0.000 srgb} bind def 27 | /col14 {0.000 0.820 0.000 srgb} bind def 28 | /col15 {0.000 0.560 0.560 srgb} bind def 29 | /col16 {0.000 0.690 0.690 srgb} bind def 30 | /col17 {0.000 0.820 0.820 srgb} bind def 31 | /col18 {0.560 0.000 0.000 srgb} bind def 32 | /col19 {0.690 0.000 0.000 srgb} bind def 33 | /col20 {0.820 0.000 0.000 srgb} bind def 34 | /col21 {0.560 0.000 0.560 srgb} bind def 35 | /col22 {0.690 0.000 0.690 srgb} bind def 36 | /col23 {0.820 0.000 0.820 srgb} bind def 37 | /col24 {0.500 0.190 0.000 srgb} bind def 38 | /col25 {0.630 0.250 0.000 srgb} bind def 39 | /col26 {0.750 0.380 0.000 srgb} bind def 40 | /col27 {1.000 0.500 0.500 srgb} bind def 41 | /col28 {1.000 0.630 0.630 srgb} bind def 42 | /col29 {1.000 0.750 0.750 srgb} bind def 43 | /col30 {1.000 0.880 0.880 srgb} bind def 44 | /col31 {1.000 0.840 0.000 srgb} bind def 45 | 46 | end 47 | save 48 | newpath 0 217 moveto 0 0 lineto 272 0 lineto 272 217 lineto closepath clip newpath 49 | -119.0 282.0 translate 50 | 1 -1 scale 51 | 52 | /cp {closepath} bind def 53 | /ef {eofill} bind def 54 | /gr {grestore} bind def 55 | /gs {gsave} bind def 56 | /sa {save} bind def 57 | /rs {restore} bind def 58 | /l {lineto} bind def 59 | /m {moveto} bind def 60 | /rm {rmoveto} bind def 61 | /n {newpath} bind def 62 | /s {stroke} bind def 63 | /sh {show} bind def 64 | /slc {setlinecap} bind def 65 | /slj {setlinejoin} bind def 66 | /slw {setlinewidth} bind def 67 | /srgb {setrgbcolor} bind def 68 | /rot {rotate} bind def 69 | /sc {scale} bind def 70 | /sd {setdash} bind def 71 | /ff {findfont} bind def 72 | /sf {setfont} bind def 73 | /scf {scalefont} bind def 74 | /sw {stringwidth} bind def 75 | /tr {translate} bind def 76 | /tnt {dup dup currentrgbcolor 77 | 4 -2 roll dup 1 exch sub 3 -1 roll mul add 78 | 4 -2 roll dup 1 exch sub 3 -1 roll mul add 79 | 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} 80 | bind def 81 | /shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul 82 | 4 -2 roll mul srgb} bind def 83 | /DrawEllipse { 84 | /endangle exch def 85 | /startangle exch def 86 | /yrad exch def 87 | /xrad exch def 88 | /y exch def 89 | /x exch def 90 | /savematrix mtrx currentmatrix def 91 | x y tr xrad yrad sc 0 0 1 startangle endangle arc 92 | closepath 93 | savematrix setmatrix 94 | } def 95 | 96 | /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def 97 | /$F2psEnd {$F2psEnteredState restore end} def 98 | 99 | $F2psBegin 100 | %%Page: 1 1 101 | 10 setmiterlimit 102 | 0.06000 0.06000 sc 103 | % Arc 104 | 7.500 slw 105 | gs clippath 106 | 5118 3811 m 5065 3782 l 4976 3943 l 5075 3827 l 5028 3972 l cp 107 | eoclip 108 | n 4287.4 3441.3 878.7 89.8 24.8 arcn 109 | gs col0 s gr 110 | gr 111 | 112 | % arrowhead 113 | n 5028 3972 m 5075 3827 l 4976 3943 l 5016 3932 l 5028 3972 l 114 | cp gs 0.00 setgray ef gr col0 s 115 | % Arc 116 | gs clippath 117 | 3506 2765 m 3480 2711 l 3314 2793 l 3462 2754 l 3340 2847 l cp 118 | eoclip 119 | n 3212.2 2339.8 485.7 112.0 56.5 arcn 120 | gs col0 s gr 121 | gr 122 | 123 | % arrowhead 124 | n 3340 2847 m 3462 2754 l 3314 2793 l 3354 2806 l 3340 2847 l 125 | cp gs 0.00 setgray ef gr col0 s 126 | % Ellipse 127 | n 3735 3150 150 150 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr 128 | 129 | % Ellipse 130 | n 6045 4020 150 150 0 360 DrawEllipse gs 0.00 setgray ef gr gs col0 s gr 131 | 132 | % Ellipse 133 | n 6000 2970 200 200 0 360 DrawEllipse gs col0 s gr 134 | 135 | % Ellipse 136 | n 4365 2550 200 200 0 360 DrawEllipse gs col0 s gr 137 | 138 | % Ellipse 139 | n 5235 2040 200 200 0 360 DrawEllipse gs col0 s gr 140 | 141 | % Polyline 142 | 15.000 slw 143 | n 2985 1410 m 144 | 3720 3135 l gs col0 s gr 145 | % Polyline 146 | n 3825 3195 m 147 | 6000 4005 l gs col0 s gr 148 | % Polyline 149 | 7.500 slw 150 | [60] 0 sd 151 | n 2985 1425 m 152 | 2985 2955 l gs col0 s gr [] 0 sd 153 | % Polyline 154 | [60] 0 sd 155 | n 3645 2940 m 156 | 4365 4680 l gs col0 s gr [] 0 sd 157 | % Polyline 158 | gs clippath 159 | 5235 1410 m 5175 1410 l 5175 1561 l 5205 1441 l 5235 1561 l cp 160 | eoclip 161 | n 5205 1830 m 162 | 5205 1425 l gs col0 s gr gr 163 | 164 | % arrowhead 165 | n 5235 1561 m 5205 1441 l 5175 1561 l 5235 1561 l cp gs 0.00 setgray ef gr col0 s 166 | % Polyline 167 | gs clippath 168 | 5985 3840 m 6045 3840 l 6045 3689 l 6015 3809 l 5985 3689 l cp 169 | eoclip 170 | n 6015 3195 m 171 | 6015 3825 l gs col0 s gr gr 172 | 173 | % arrowhead 174 | n 5985 3689 m 6015 3809 l 6045 3689 l 5985 3689 l cp gs 0.00 setgray ef gr col0 s 175 | % Polyline 176 | gs clippath 177 | 3853 3019 m 3895 3061 l 4002 2955 l 3896 3019 l 3959 2912 l cp 178 | eoclip 179 | n 4215 2700 m 180 | 3885 3030 l gs col0 s gr gr 181 | 182 | % arrowhead 183 | n 3959 2912 m 3896 3019 l 4002 2955 l 3959 2912 l cp gs 0.00 setgray ef gr col0 s 184 | % Polyline 185 | n 2000 1100 m 6500 1100 l 6500 1400 l 2000 1400 l 186 | cp gs col7 0.50 shd ef gr gs col0 s gr 187 | /Times-Roman ff 180.00 scf sf 188 | 3105 2595 m 189 | gs 1 -1 sc (q1) col0 sh gr 190 | /Times-Roman ff 180.00 scf sf 191 | 4290 2640 m 192 | gs 1 -1 sc (P1) col0 sh gr 193 | /Times-Roman ff 180.00 scf sf 194 | 5925 3060 m 195 | gs 1 -1 sc (P2) col0 sh gr 196 | /Times-Roman ff 210.00 scf sf 197 | 4350 3945 m 198 | gs 1 -1 sc (q2) col0 sh gr 199 | /Times-Roman ff 180.00 scf sf 200 | 3465 2235 m 201 | gs 1 -1 sc (L1) col0 sh gr 202 | /Times-Roman ff 180.00 scf sf 203 | 4935 3525 m 204 | gs 1 -1 sc (L2) col0 sh gr 205 | /Times-Roman ff 180.00 scf sf 206 | 5190 2115 m 207 | gs 1 -1 sc (N) col0 sh gr 208 | $F2psEnd 209 | rs 210 | -------------------------------------------------------------------------------- /src/images/pend.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/pend.pdf -------------------------------------------------------------------------------- /src/images/psfrag-ex1.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/psfrag-ex1.pdf -------------------------------------------------------------------------------- /src/images/psfrag-ex2.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/psfrag-ex2.pdf -------------------------------------------------------------------------------- /src/images/psfrag-ex3.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/psfrag-ex3.pdf -------------------------------------------------------------------------------- /src/images/recycle.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/recycle.pdf -------------------------------------------------------------------------------- /src/images/right.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-2.0 EPSF-2.0 2 | %%BoundingBox: 198 393 397 449 3 | %%HiResBoundingBox: 198.000000 393.000000 396.500000 449.000000 4 | %XpdfVersion: 3.04 5 | %%Creator: XeTeX output 2016.11.01:1403 6 | %%LanguageLevel: 2 7 | %%DocumentMedia: plain 595 842 0 () () 8 | %%EndComments 9 | % EPSF created by ps2eps 1.68 10 | %%BeginProlog 11 | save 12 | countdictstack 13 | mark 14 | newpath 15 | /showpage {} def 16 | /setpagedevice {pop} def 17 | %%EndProlog 18 | %%Page 1 1 19 | %%BeginDefaults 20 | %%PageMedia: plain 21 | %%EndDefaults 22 | %%BeginProlog 23 | %%BeginResource: procset xpdf 3.04 0 24 | %%Copyright: Copyright 1996-2014 Glyph & Cog, LLC 25 | /xpdf 75 dict def xpdf begin 26 | % PDF special state 27 | /pdfDictSize 15 def 28 | /pdfSetup { 29 | /pdfDuplex exch def 30 | /setpagedevice where { 31 | pop 2 dict begin 32 | /Policies 1 dict dup begin /PageSize 6 def end def 33 | pdfDuplex { /Duplex true def } if 34 | currentdict end setpagedevice 35 | } if 36 | /pdfPageW 0 def 37 | /pdfPageH 0 def 38 | } def 39 | /pdfSetupPaper { 40 | 2 copy pdfPageH ne exch pdfPageW ne or { 41 | /pdfPageH exch def 42 | /pdfPageW exch def 43 | /setpagedevice where { 44 | pop 3 dict begin 45 | /PageSize [pdfPageW pdfPageH] def 46 | pdfDuplex { /Duplex true def } if 47 | /ImagingBBox null def 48 | currentdict end setpagedevice 49 | } if 50 | } { 51 | pop pop 52 | } ifelse 53 | } def 54 | /pdfStartPage { 55 | pdfDictSize dict begin 56 | /pdfFillCS [] def 57 | /pdfFillXform {} def 58 | /pdfStrokeCS [] def 59 | /pdfStrokeXform {} def 60 | /pdfFill [0] def 61 | /pdfStroke [0] def 62 | /pdfFillOP false def 63 | /pdfStrokeOP false def 64 | /pdfLastFill false def 65 | /pdfLastStroke false def 66 | /pdfTextMat [1 0 0 1 0 0] def 67 | /pdfFontSize 0 def 68 | /pdfCharSpacing 0 def 69 | /pdfTextRender 0 def 70 | /pdfTextRise 0 def 71 | /pdfWordSpacing 0 def 72 | /pdfHorizScaling 1 def 73 | /pdfTextClipPath [] def 74 | } def 75 | /pdfEndPage { end } def 76 | % PDF color state 77 | /cs { /pdfFillXform exch def dup /pdfFillCS exch def 78 | setcolorspace } def 79 | /CS { /pdfStrokeXform exch def dup /pdfStrokeCS exch def 80 | setcolorspace } def 81 | /sc { pdfLastFill not { pdfFillCS setcolorspace } if 82 | dup /pdfFill exch def aload pop pdfFillXform setcolor 83 | /pdfLastFill true def /pdfLastStroke false def } def 84 | /SC { pdfLastStroke not { pdfStrokeCS setcolorspace } if 85 | dup /pdfStroke exch def aload pop pdfStrokeXform setcolor 86 | /pdfLastStroke true def /pdfLastFill false def } def 87 | /op { /pdfFillOP exch def 88 | pdfLastFill { pdfFillOP setoverprint } if } def 89 | /OP { /pdfStrokeOP exch def 90 | pdfLastStroke { pdfStrokeOP setoverprint } if } def 91 | /fCol { 92 | pdfLastFill not { 93 | pdfFillCS setcolorspace 94 | pdfFill aload pop pdfFillXform setcolor 95 | pdfFillOP setoverprint 96 | /pdfLastFill true def /pdfLastStroke false def 97 | } if 98 | } def 99 | /sCol { 100 | pdfLastStroke not { 101 | pdfStrokeCS setcolorspace 102 | pdfStroke aload pop pdfStrokeXform setcolor 103 | pdfStrokeOP setoverprint 104 | /pdfLastStroke true def /pdfLastFill false def 105 | } if 106 | } def 107 | % build a font 108 | /pdfMakeFont { 109 | 4 3 roll findfont 110 | 4 2 roll matrix scale makefont 111 | dup length dict begin 112 | { 1 index /FID ne { def } { pop pop } ifelse } forall 113 | /Encoding exch def 114 | currentdict 115 | end 116 | definefont pop 117 | } def 118 | /pdfMakeFont16 { 119 | exch findfont 120 | dup length dict begin 121 | { 1 index /FID ne { def } { pop pop } ifelse } forall 122 | /WMode exch def 123 | currentdict 124 | end 125 | definefont pop 126 | } def 127 | % graphics state operators 128 | /q { gsave pdfDictSize dict begin } def 129 | /Q { 130 | end grestore 131 | /pdfLastFill where { 132 | pop 133 | pdfLastFill { 134 | pdfFillOP setoverprint 135 | } { 136 | pdfStrokeOP setoverprint 137 | } ifelse 138 | } if 139 | } def 140 | /cm { concat } def 141 | /d { setdash } def 142 | /i { setflat } def 143 | /j { setlinejoin } def 144 | /J { setlinecap } def 145 | /M { setmiterlimit } def 146 | /w { setlinewidth } def 147 | % path segment operators 148 | /m { moveto } def 149 | /l { lineto } def 150 | /c { curveto } def 151 | /re { 4 2 roll moveto 1 index 0 rlineto 0 exch rlineto 152 | neg 0 rlineto closepath } def 153 | /h { closepath } def 154 | % path painting operators 155 | /S { sCol stroke } def 156 | /Sf { fCol stroke } def 157 | /f { fCol fill } def 158 | /f* { fCol eofill } def 159 | % clipping operators 160 | /W { clip newpath } def 161 | /W* { eoclip newpath } def 162 | /Ws { strokepath clip newpath } def 163 | % text state operators 164 | /Tc { /pdfCharSpacing exch def } def 165 | /Tf { dup /pdfFontSize exch def 166 | dup pdfHorizScaling mul exch matrix scale 167 | pdfTextMat matrix concatmatrix dup 4 0 put dup 5 0 put 168 | exch findfont exch makefont setfont } def 169 | /Tr { /pdfTextRender exch def } def 170 | /Ts { /pdfTextRise exch def } def 171 | /Tw { /pdfWordSpacing exch def } def 172 | /Tz { /pdfHorizScaling exch def } def 173 | % text positioning operators 174 | /Td { pdfTextMat transform moveto } def 175 | /Tm { /pdfTextMat exch def } def 176 | % text string operators 177 | /xyshow where { 178 | pop 179 | /xyshow2 { 180 | dup length array 181 | 0 2 2 index length 1 sub { 182 | 2 index 1 index 2 copy get 3 1 roll 1 add get 183 | pdfTextMat dtransform 184 | 4 2 roll 2 copy 6 5 roll put 1 add 3 1 roll dup 4 2 roll put 185 | } for 186 | exch pop 187 | xyshow 188 | } def 189 | }{ 190 | /xyshow2 { 191 | currentfont /FontType get 0 eq { 192 | 0 2 3 index length 1 sub { 193 | currentpoint 4 index 3 index 2 getinterval show moveto 194 | 2 copy get 2 index 3 2 roll 1 add get 195 | pdfTextMat dtransform rmoveto 196 | } for 197 | } { 198 | 0 1 3 index length 1 sub { 199 | currentpoint 4 index 3 index 1 getinterval show moveto 200 | 2 copy 2 mul get 2 index 3 2 roll 2 mul 1 add get 201 | pdfTextMat dtransform rmoveto 202 | } for 203 | } ifelse 204 | pop pop 205 | } def 206 | } ifelse 207 | /cshow where { 208 | pop 209 | /xycp { 210 | 0 3 2 roll 211 | { 212 | pop pop currentpoint 3 2 roll 213 | 1 string dup 0 4 3 roll put false charpath moveto 214 | 2 copy get 2 index 2 index 1 add get 215 | pdfTextMat dtransform rmoveto 216 | 2 add 217 | } exch cshow 218 | pop pop 219 | } def 220 | }{ 221 | /xycp { 222 | currentfont /FontType get 0 eq { 223 | 0 2 3 index length 1 sub { 224 | currentpoint 4 index 3 index 2 getinterval false charpath moveto 225 | 2 copy get 2 index 3 2 roll 1 add get 226 | pdfTextMat dtransform rmoveto 227 | } for 228 | } { 229 | 0 1 3 index length 1 sub { 230 | currentpoint 4 index 3 index 1 getinterval false charpath moveto 231 | 2 copy 2 mul get 2 index 3 2 roll 2 mul 1 add get 232 | pdfTextMat dtransform rmoveto 233 | } for 234 | } ifelse 235 | pop pop 236 | } def 237 | } ifelse 238 | /Tj { 239 | fCol 240 | 0 pdfTextRise pdfTextMat dtransform rmoveto 241 | currentpoint 4 2 roll 242 | pdfTextRender 1 and 0 eq { 243 | 2 copy xyshow2 244 | } if 245 | pdfTextRender 3 and dup 1 eq exch 2 eq or { 246 | 3 index 3 index moveto 247 | 2 copy 248 | currentfont /FontType get 3 eq { fCol } { sCol } ifelse 249 | xycp currentpoint stroke moveto 250 | } if 251 | pdfTextRender 4 and 0 ne { 252 | 4 2 roll moveto xycp 253 | /pdfTextClipPath [ pdfTextClipPath aload pop 254 | {/moveto cvx} 255 | {/lineto cvx} 256 | {/curveto cvx} 257 | {/closepath cvx} 258 | pathforall ] def 259 | currentpoint newpath moveto 260 | } { 261 | pop pop pop pop 262 | } ifelse 263 | 0 pdfTextRise neg pdfTextMat dtransform rmoveto 264 | } def 265 | /TJm { 0.001 mul pdfFontSize mul pdfHorizScaling mul neg 0 266 | pdfTextMat dtransform rmoveto } def 267 | /TJmV { 0.001 mul pdfFontSize mul neg 0 exch 268 | pdfTextMat dtransform rmoveto } def 269 | /Tclip { pdfTextClipPath cvx exec clip newpath 270 | /pdfTextClipPath [] def } def 271 | % Level 2/3 image operators 272 | /pdfImBuf 100 string def 273 | /pdfImStr { 274 | 2 copy exch length lt { 275 | 2 copy get exch 1 add exch 276 | } { 277 | () 278 | } ifelse 279 | } def 280 | /skipEOD { 281 | { currentfile pdfImBuf readline 282 | not { pop exit } if 283 | (%-EOD-) eq { exit } if } loop 284 | } def 285 | /pdfIm { image skipEOD } def 286 | /pdfImM { fCol imagemask skipEOD } def 287 | /pr { 288 | 4 2 roll exch 5 index div exch 4 index div moveto 289 | exch 3 index div dup 0 rlineto 290 | exch 2 index div 0 exch rlineto 291 | neg 0 rlineto 292 | closepath 293 | } def 294 | /pdfImClip { gsave clip } def 295 | /pdfImClipEnd { grestore } def 296 | % shading operators 297 | /colordelta { 298 | false 0 1 3 index length 1 sub { 299 | dup 4 index exch get 3 index 3 2 roll get sub abs 0.004 gt { 300 | pop true 301 | } if 302 | } for 303 | exch pop exch pop 304 | } def 305 | /funcCol { func n array astore } def 306 | /funcSH { 307 | dup 0 eq { 308 | true 309 | } { 310 | dup 6 eq { 311 | false 312 | } { 313 | 4 index 4 index funcCol dup 314 | 6 index 4 index funcCol dup 315 | 3 1 roll colordelta 3 1 roll 316 | 5 index 5 index funcCol dup 317 | 3 1 roll colordelta 3 1 roll 318 | 6 index 8 index funcCol dup 319 | 3 1 roll colordelta 3 1 roll 320 | colordelta or or or 321 | } ifelse 322 | } ifelse 323 | { 324 | 1 add 325 | 4 index 3 index add 0.5 mul exch 4 index 3 index add 0.5 mul exch 326 | 6 index 6 index 4 index 4 index 4 index funcSH 327 | 2 index 6 index 6 index 4 index 4 index funcSH 328 | 6 index 2 index 4 index 6 index 4 index funcSH 329 | 5 3 roll 3 2 roll funcSH pop pop 330 | } { 331 | pop 3 index 2 index add 0.5 mul 3 index 2 index add 0.5 mul 332 | funcCol sc 333 | dup 4 index exch mat transform m 334 | 3 index 3 index mat transform l 335 | 1 index 3 index mat transform l 336 | mat transform l pop pop h f* 337 | } ifelse 338 | } def 339 | /axialCol { 340 | dup 0 lt { 341 | pop t0 342 | } { 343 | dup 1 gt { 344 | pop t1 345 | } { 346 | dt mul t0 add 347 | } ifelse 348 | } ifelse 349 | func n array astore 350 | } def 351 | /axialSH { 352 | dup 2 lt { 353 | true 354 | } { 355 | dup 8 eq { 356 | false 357 | } { 358 | 2 index axialCol 2 index axialCol colordelta 359 | } ifelse 360 | } ifelse 361 | { 362 | 1 add 3 1 roll 2 copy add 0.5 mul 363 | dup 4 3 roll exch 4 index axialSH 364 | exch 3 2 roll axialSH 365 | } { 366 | pop 2 copy add 0.5 mul 367 | axialCol sc 368 | exch dup dx mul x0 add exch dy mul y0 add 369 | 3 2 roll dup dx mul x0 add exch dy mul y0 add 370 | dx abs dy abs ge { 371 | 2 copy yMin sub dy mul dx div add yMin m 372 | yMax sub dy mul dx div add yMax l 373 | 2 copy yMax sub dy mul dx div add yMax l 374 | yMin sub dy mul dx div add yMin l 375 | h f* 376 | } { 377 | exch 2 copy xMin sub dx mul dy div add xMin exch m 378 | xMax sub dx mul dy div add xMax exch l 379 | exch 2 copy xMax sub dx mul dy div add xMax exch l 380 | xMin sub dx mul dy div add xMin exch l 381 | h f* 382 | } ifelse 383 | } ifelse 384 | } def 385 | /radialCol { 386 | dup t0 lt { 387 | pop t0 388 | } { 389 | dup t1 gt { 390 | pop t1 391 | } if 392 | } ifelse 393 | func n array astore 394 | } def 395 | /radialSH { 396 | dup 0 eq { 397 | true 398 | } { 399 | dup 8 eq { 400 | false 401 | } { 402 | 2 index dt mul t0 add radialCol 403 | 2 index dt mul t0 add radialCol colordelta 404 | } ifelse 405 | } ifelse 406 | { 407 | 1 add 3 1 roll 2 copy add 0.5 mul 408 | dup 4 3 roll exch 4 index radialSH 409 | exch 3 2 roll radialSH 410 | } { 411 | pop 2 copy add 0.5 mul dt mul t0 add 412 | radialCol sc 413 | encl { 414 | exch dup dx mul x0 add exch dup dy mul y0 add exch dr mul r0 add 415 | 0 360 arc h 416 | dup dx mul x0 add exch dup dy mul y0 add exch dr mul r0 add 417 | 360 0 arcn h f 418 | } { 419 | 2 copy 420 | dup dx mul x0 add exch dup dy mul y0 add exch dr mul r0 add 421 | a1 a2 arcn 422 | dup dx mul x0 add exch dup dy mul y0 add exch dr mul r0 add 423 | a2 a1 arcn h 424 | dup dx mul x0 add exch dup dy mul y0 add exch dr mul r0 add 425 | a1 a2 arc 426 | dup dx mul x0 add exch dup dy mul y0 add exch dr mul r0 add 427 | a2 a1 arc h f 428 | } ifelse 429 | } ifelse 430 | } def 431 | end 432 | %%EndResource 433 | %%EndProlog 434 | %%BeginSetup 435 | xpdf begin 436 | %%BeginResource: font GMORPG+CMR10 437 | %!FontType1-1.0: GMORPG+CMR10003.002 438 | 12 dict begin 439 | /FontInfo 10 dict dup begin 440 | /version (003.002) readonly def 441 | /Notice (Copyright \(c\) 1997, 2009 American Mathematical Society \(\), with Reserved Font Name CMR10.) readonly def 443 | /FullName (CMR10) readonly def 444 | /FamilyName (Computer Modern) readonly def 445 | /Weight (Medium) readonly def 446 | /isFixedPitch false def 447 | /ItalicAngle 0 def 448 | /UnderlinePosition -100 def 449 | /UnderlineThickness 50 def 450 | end readonly def 451 | /FontName /GMORPG+CMR10 def 452 | /PaintType 0 def 453 | /FontType 1 def 454 | /FontMatrix [0.001 0 0 0.001 0 0] readonly def 455 | /FontBBox [-40 -250 1009 750] readonly def 456 | /StrokeWidth 0 def 457 | /Encoding 256 array 458 | 0 1 255 {1 index exch /.notdef put} for 459 | dup 82 /R put 460 | dup 103 /g put 461 | dup 104 /h put 462 | dup 105 /i put 463 | dup 116 /t put 464 | readonly def 465 | currentdict end 466 | currentfile eexec 467 | 5AA4F71255501637F1A431BAB555283D093E1B588B45B0281559110D21315C62 468 | BD638C6B34BA54AA75227715D9947EBCD51A104CAEA657499E94138F5645BF68 469 | 368BB1B1EC8E4776F067FFF2CE9B89FB7E63A7DB304498C1036D399C47A4CB79 470 | BD517EDB02BEB90195FD7DDAF3E839BCE2DB156D9337DBB2305A465B3E0FFB97 471 | 1985C79DC71C47E26F9F0F042B2CDEE97B679358059256FB93D662D43C7ECB5B 472 | 1A564DFCECB963478373C69F52172F071E0AA6082A3E10D9E1CE2851CFA210EE 473 | 7BD5FCB1AAE15E89D1FB339D587D218B89C18A32F47C7451A80CB1FC07CF5EF6 474 | FA6B0AF338BD4E48F07258C8AB349EE790EF474E6D540CD5017BDA227D234CDE 475 | C5B56DC44D44AB50DFB075E5E1022F04510349EA668084E7A051605C83646AF5 476 | 902E437867493A954EAEF35981EA89706F0AC717DFC491968979A7EF87F475E4 477 | 8F22A3A7D7750B755878A9B88483EDC2409C0D58BE116764B583FF78D1FBF3AD 478 | 289831C79680B7183956FD64718B7BBE2D8DF65EB9DAA46A90706B45496ACFE9 479 | 78439069B8944845B613846CACD0BD317E15DCE9A145DF53397C590D3D4EF8B9 480 | 4F890461DEA02154C74CB24CC015689C2B05670B016C0121C0C461F357D1DF82 481 | 83BD5885B8659C5A44FFB46ADA1797BFEDDFB7AA47C35018DE226ED36DEB70C3 482 | 3691DCADC70845C0BB8754248D4455BEC514A5EAE290C9B435ED63EE43A585E9 483 | 800AB3D03068F534C61CD39054E35694DD3E1F245BFF51F29D95DEC96E1BB3F6 484 | 06BCC6C1CE2779B4141BCEFC336DAA955A653E92BE0300B1FA0DDFAA2FC96AB8 485 | D6F51A17C4159168EA2E6FD001007BA69A55F9C47FB802ACF22F036005715972 486 | AE84E98DCD33789E096C2B4DE8E09C2202501DF48CC318B99E8BAFF5D34DBC81 487 | 6DA7A0C20B56430CDF1FCEFC2C03172FF5BAFFDA32CFCCB04A015AB3755764E2 488 | 5D08A86C3E9DD34501AC64FC0CD0A85139FE28A8E364EE9BCFA1C47D988F2476 489 | 5D8A05B4C82758ADF2A84C0DAF8C317B9272B98DFAC8F2A8AC7BDDEFFCA22055 490 | B80C072F630E5C25D4DE6B9F811C7B5D99D0B9793BC86C17B906C7749C1AD21B 491 | 6C87498AE748A7784C503ABFD16DC71761D863EFE60A3F825E0AF84CAF3583F7 492 | 60F51330AACCF1FC6E36E79F6F1B1B4FF83F91E706D4460DF0D3D5196BA83BAB 493 | 74326C96D440CD66BB62AED7BBB8942DA9A0E41BDC4FC916D29123AA455DC1CA 494 | D53556D9124C46A19FB75220A312D08822C05849B3EE08AF5FAC0E179CD2811B 495 | F5FAD5D8EDCD789ABCA9C709BF2F6F8B4BE931A330599E153D7488F28F465ED9 496 | B230817F9B05E7E032F1228E80A84C4B6620873B8E02DB44FAC44F463A8ACAC7 497 | BA1567BC1223257D9CF5156F374223FFCFD65812EAEC248EAACE64AE392710BC 498 | 5C9171743A803286AD398EA4537BCF7E5A8BDFDC55BD6C3811F61DCD43B08A4A 499 | 1B7A7EC0C99A8A5CA2F84BA52847255D772DE6CCABC771CE734F8728A2663E55 500 | BA4D645D15668C1BDE0195F79A43232869BFCEA68AB8B84880F44F88C17AF6DE 501 | 309A77156BA4BABDBC0D1F41E4B618E6349F12DA7DD2C0441A1671FBC9B96B06 502 | 66205C8DEE235E411B0007ED8BDBC7A52E98ED0E492115D6701C8478C1FAB3FC 503 | D3A1BB5A5F25C272CC013ED5AA70B57CBD6117DF817FED726AF426C05E6FB4E4 504 | 70A45C67B1EE26F5B797D07B000ACF0F217A40A63BB9C04130D51BB3E99B6F95 505 | F6F35DDA04FE808FB76A013F6F8743BAEEB95FCBCD0FEB82E7F94182FC6C2908 506 | 20ADE86A895CB8E7BAB390D4EB7B670A4CD7558F1BA6BE52224A9D91E8D62469 507 | 11B9F8E92B994BFF5E72855CD6C568F71419551318F4C95F23B9848EEADAE9E9 508 | 8C41C23FDB0B0CCBABCB17CB35701946361C1300D2027319EC66D791B8CF594C 509 | 9712E192F311F386919D7B79D3F7 510 | 0000000000000000000000000000000000000000000000000000000000000000 511 | 0000000000000000000000000000000000000000000000000000000000000000 512 | 0000000000000000000000000000000000000000000000000000000000000000 513 | 0000000000000000000000000000000000000000000000000000000000000000 514 | 0000000000000000000000000000000000000000000000000000000000000000 515 | 0000000000000000000000000000000000000000000000000000000000000000 516 | 0000000000000000000000000000000000000000000000000000000000000000 517 | 0000000000000000000000000000000000000000000000000000000000000000 518 | cleartomark 519 | %%EndResource 520 | /F4_0 /GMORPG+CMR10 1 1 521 | [ /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 522 | /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 523 | /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 524 | /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 525 | /space/exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright 526 | /parenleft/parenright/asterisk/plus/comma/hyphen/period/slash 527 | /zero/one/two/three/four/five/six/seven 528 | /eight/nine/colon/semicolon/less/equal/greater/question 529 | /at/A/B/C/D/E/F/G 530 | /H/I/J/K/L/M/N/O 531 | /P/Q/R/S/T/U/V/W 532 | /X/Y/Z/bracketleft/backslash/bracketright/asciicircum/underscore 533 | /quoteleft/a/b/c/d/e/f/g 534 | /h/i/j/k/l/m/n/o 535 | /p/q/r/s/t/u/v/w 536 | /x/y/z/braceleft/bar/braceright/asciitilde/.notdef 537 | /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 538 | /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 539 | /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 540 | /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 541 | /.notdef/exclamdown/cent/sterling/fraction/yen/florin/section 542 | /currency/quotesingle/quotedblleft/guillemotleft/guilsinglleft/guilsinglright/fi/fl 543 | /.notdef/endash/dagger/daggerdbl/periodcentered/.notdef/paragraph/bullet 544 | /quotesinglbase/quotedblbase/quotedblright/guillemotright/ellipsis/perthousand/.notdef/questiondown 545 | /.notdef/grave/acute/circumflex/tilde/macron/breve/dotaccent 546 | /dieresis/.notdef/ring/cedilla/.notdef/hungarumlaut/ogonek/caron 547 | /emdash/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 548 | /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef 549 | /.notdef/AE/.notdef/ordfeminine/.notdef/.notdef/.notdef/.notdef 550 | /Lslash/Oslash/OE/ordmasculine/.notdef/.notdef/.notdef/.notdef 551 | /.notdef/ae/.notdef/.notdef/.notdef/dotlessi/.notdef/.notdef 552 | /lslash/oslash/oe/germandbls/.notdef/.notdef/.notdef/.notdef] 553 | pdfMakeFont 554 | false pdfSetup 555 | 595 842 pdfSetupPaper 556 | end 557 | %%EndSetup 558 | %%Page: 1 1 559 | %%BeginPageSetup 560 | xpdf begin 561 | %%PageOrientation: Portrait 562 | pdfStartPage 563 | 198 393 translate 564 | 0 0 199 56 re W 565 | %%EndPageSetup 566 | [] 0 d 567 | 1 i 568 | 0 j 569 | 0 J 570 | 10 M 571 | 1 w 572 | /DeviceGray {} cs 573 | [0] sc 574 | /DeviceGray {} CS 575 | [0] SC 576 | false op 577 | false OP 578 | {} settransfer 579 | 0 0 198.45 55.91 re 580 | W 581 | q 582 | q 583 | [1 0 0 1 72 -16.089] cm 584 | q 585 | [3.32294 0 0 3.32294 167.252 -83.087] cm 586 | q 587 | 0.9963 w 588 | -72 46.174 m 589 | -12.279 46.174 l 590 | S 591 | Q 592 | q 593 | 0.9963 w 594 | -71.502 30.842 m 595 | -71.502 45.675 l 596 | S 597 | Q 598 | [1 0 0 1 0 0] Tm 599 | 0 0 Td 600 | -40.479 35.768 Td 601 | /F4_0 9.9626 Tf 602 | (Righ) 603 | [7.33347 604 | 0 605 | 2.76761 606 | 0 607 | 4.9813 608 | 0 609 | 5.535221 610 | 0] Tj 611 | 27 TJm 612 | (t) 613 | [3.874455 614 | 0] Tj 615 | q 616 | 0.9963 w 617 | -12.778 30.842 m 618 | -12.778 45.675 l 619 | S 620 | Q 621 | q 622 | 0.9963 w 623 | -72 30.344 m 624 | -12.279 30.344 l 625 | S 626 | Q 627 | Q 628 | Q 629 | Q 630 | showpage 631 | %%PageTrailer 632 | pdfEndPage 633 | end 634 | %%Trailer 635 | %%DocumentSuppliedResources: 636 | %%+ font GMORPG+CMR10 637 | %%Trailer 638 | cleartomark 639 | countdictstack 640 | exch sub { end } repeat 641 | restore 642 | %%EOF 643 | -------------------------------------------------------------------------------- /src/images/right.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/right.pdf -------------------------------------------------------------------------------- /src/images/rosette.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/rosette.pdf -------------------------------------------------------------------------------- /src/images/rosette.ps: -------------------------------------------------------------------------------- 1 | /inch {72 mul} def 2 | 3 | /wedge 4 | { newpath 5 | 0 0 moveto 6 | 1 0 translate 7 | 15 rotate 8 | 0 15 sin translate 9 | 0 0 15 sin -90 90 arc 10 | closepath 11 | } def 12 | 13 | gsave 14 | 4.25 inch 4.25 inch translate 15 | 1.75 inch 1.75 inch scale 16 | 0.02 setlinewidth 17 | 2 1 13 18 | { 19 | 13 div setgray 20 | gsave 21 | wedge 22 | gsave 23 | fill 24 | grestore 25 | 0 setgray stroke 26 | grestore 27 | 30 rotate 28 | } for 29 | 30 | grestore 31 | showpage 32 | 33 | -------------------------------------------------------------------------------- /src/images/rosettebox.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-2.0 EPSF-2.0 2 | %%Title: rosettebox.eps 3 | %%Creator: fig2dev Version 3.2 Patchlevel 1 4 | %%CreationDate: Sun Apr 2 19:30:44 2000 5 | %%For: lwang@amath8.amt.ac.cn (Wang Lei) 6 | %%Orientation: Portrait 7 | %%BoundingBox: 0 0 154 154 8 | %%Pages: 0 9 | %%BeginSetup 10 | %%EndSetup 11 | %%Magnification: 1.0000 12 | %%EndComments 13 | /$F2psDict 200 dict def 14 | $F2psDict begin 15 | $F2psDict /mtrx matrix put 16 | /col-1 {0 setgray} bind def 17 | /col0 {0.000 0.000 0.000 srgb} bind def 18 | /col1 {0.000 0.000 1.000 srgb} bind def 19 | /col2 {0.000 1.000 0.000 srgb} bind def 20 | /col3 {0.000 1.000 1.000 srgb} bind def 21 | /col4 {1.000 0.000 0.000 srgb} bind def 22 | /col5 {1.000 0.000 1.000 srgb} bind def 23 | /col6 {1.000 1.000 0.000 srgb} bind def 24 | /col7 {1.000 1.000 1.000 srgb} bind def 25 | /col8 {0.000 0.000 0.560 srgb} bind def 26 | /col9 {0.000 0.000 0.690 srgb} bind def 27 | /col10 {0.000 0.000 0.820 srgb} bind def 28 | /col11 {0.530 0.810 1.000 srgb} bind def 29 | /col12 {0.000 0.560 0.000 srgb} bind def 30 | /col13 {0.000 0.690 0.000 srgb} bind def 31 | /col14 {0.000 0.820 0.000 srgb} bind def 32 | /col15 {0.000 0.560 0.560 srgb} bind def 33 | /col16 {0.000 0.690 0.690 srgb} bind def 34 | /col17 {0.000 0.820 0.820 srgb} bind def 35 | /col18 {0.560 0.000 0.000 srgb} bind def 36 | /col19 {0.690 0.000 0.000 srgb} bind def 37 | /col20 {0.820 0.000 0.000 srgb} bind def 38 | /col21 {0.560 0.000 0.560 srgb} bind def 39 | /col22 {0.690 0.000 0.690 srgb} bind def 40 | /col23 {0.820 0.000 0.820 srgb} bind def 41 | /col24 {0.500 0.190 0.000 srgb} bind def 42 | /col25 {0.630 0.250 0.000 srgb} bind def 43 | /col26 {0.750 0.380 0.000 srgb} bind def 44 | /col27 {1.000 0.500 0.500 srgb} bind def 45 | /col28 {1.000 0.630 0.630 srgb} bind def 46 | /col29 {1.000 0.750 0.750 srgb} bind def 47 | /col30 {1.000 0.880 0.880 srgb} bind def 48 | /col31 {1.000 0.840 0.000 srgb} bind def 49 | 50 | end 51 | save 52 | -268.0 422.0 translate 53 | 1 -1 scale 54 | 55 | /cp {closepath} bind def 56 | /ef {eofill} bind def 57 | /gr {grestore} bind def 58 | /gs {gsave} bind def 59 | /sa {save} bind def 60 | /rs {restore} bind def 61 | /l {lineto} bind def 62 | /m {moveto} bind def 63 | /rm {rmoveto} bind def 64 | /n {newpath} bind def 65 | /s {stroke} bind def 66 | /sh {show} bind def 67 | /slc {setlinecap} bind def 68 | /slj {setlinejoin} bind def 69 | /slw {setlinewidth} bind def 70 | /srgb {setrgbcolor} bind def 71 | /rot {rotate} bind def 72 | /sc {scale} bind def 73 | /sd {setdash} bind def 74 | /ff {findfont} bind def 75 | /sf {setfont} bind def 76 | /scf {scalefont} bind def 77 | /sw {stringwidth} bind def 78 | /tr {translate} bind def 79 | /tnt {dup dup currentrgbcolor 80 | 4 -2 roll dup 1 exch sub 3 -1 roll mul add 81 | 4 -2 roll dup 1 exch sub 3 -1 roll mul add 82 | 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} 83 | bind def 84 | /shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul 85 | 4 -2 roll mul srgb} bind def 86 | /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def 87 | /$F2psEnd {$F2psEnteredState restore end} def 88 | %%EndProlog 89 | 90 | $F2psBegin 91 | 10 setmiterlimit 92 | n -1000 8022 m -1000 -1000 l 8022 -1000 l 8022 8022 l cp clip 93 | 0.06000 0.06000 sc 94 | % Polyline 95 | 15.000 slw 96 | n 4500 4500 m 7000 4500 l 7000 7000 l 4500 7000 l cp gs col0 s gr 97 | $F2psEnd 98 | rs 99 | -------------------------------------------------------------------------------- /src/images/rosettebox.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/rosettebox.pdf -------------------------------------------------------------------------------- /src/images/rotat-box.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/rotat-box.pdf -------------------------------------------------------------------------------- /src/images/tux-black.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-3.0 EPSF-3.0 2 | %%Creator: Adobe Illustrator(TM) 3.2 3 | %%For: (Neal Tucker) (ntucker@adobe.com) 4 | %%Title: (penguin.eps) 5 | %%CreationDate: (4/29/96) (8:20 AM) 6 | %%BoundingBox: 4 2 221 258 7 | %%DocumentProcessColors: Black 8 | %%DocumentSuppliedResources: procset Adobe_packedarray 2.0 0 9 | %%+ procset Adobe_cshow 1.1 0 10 | %%+ procset Adobe_customcolor 1.0 0 11 | %%+ procset Adobe_IllustratorA_AI3 1.0 1 12 | %AI3_ColorUsage: Black&White 13 | %AI3_TemplateBox: 306 396 306 396 14 | %AI3_TileBox: 31 31 583 761 15 | %AI3_DocumentPreview: Header 16 | %%EndComments 17 | %%BeginProlog 18 | %%BeginResource: procset Adobe_packedarray 2.0 0 19 | %%Title: (Packed Array Operators) 20 | %%Version: 2.0 21 | %%CreationDate: (8/2/90) () 22 | %%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved) 23 | userdict /Adobe_packedarray 5 dict dup begin put 24 | /initialize 25 | { 26 | /packedarray where 27 | { 28 | pop 29 | } 30 | { 31 | Adobe_packedarray begin 32 | Adobe_packedarray 33 | { 34 | dup xcheck 35 | { 36 | bind 37 | } if 38 | userdict 3 1 roll put 39 | } forall 40 | end 41 | } ifelse 42 | } def 43 | /terminate 44 | { 45 | } def 46 | /packedarray 47 | { 48 | array astore readonly 49 | } def 50 | /setpacking 51 | { 52 | pop 53 | } def 54 | /currentpacking 55 | { 56 | false 57 | } def 58 | currentdict readonly pop end 59 | %%EndResource 60 | Adobe_packedarray /initialize get exec 61 | %%BeginResource: procset Adobe_cshow 1.1 0 62 | %%Title: (cshow Operator) 63 | %%Version: 1.1 64 | %%CreationDate: (1/23/89) () 65 | %%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved) 66 | currentpacking true setpacking 67 | userdict /Adobe_cshow 3 dict dup begin put 68 | /initialize 69 | { 70 | /cshow where 71 | { 72 | pop 73 | } 74 | { 75 | userdict /Adobe_cshow_vars 1 dict dup begin put 76 | /_cshow 77 | {} def 78 | Adobe_cshow begin 79 | Adobe_cshow 80 | { 81 | dup xcheck 82 | { 83 | bind 84 | } if 85 | userdict 3 1 roll put 86 | } forall 87 | end 88 | end 89 | } ifelse 90 | } def 91 | /terminate 92 | { 93 | } def 94 | /cshow 95 | { 96 | exch 97 | Adobe_cshow_vars 98 | exch /_cshow 99 | exch put 100 | { 101 | 0 0 Adobe_cshow_vars /_cshow get exec 102 | } forall 103 | } def 104 | currentdict readonly pop end 105 | setpacking 106 | %%EndResource 107 | %%BeginResource: procset Adobe_customcolor 1.0 0 108 | %%Title: (Custom Color Operators) 109 | %%Version: 1.0 110 | %%CreationDate: (5/9/88) () 111 | %%Copyright: ((C) 1987-1990 Adobe Systems Incorporated All Rights Reserved) 112 | currentpacking true setpacking 113 | userdict /Adobe_customcolor 5 dict dup begin put 114 | /initialize 115 | { 116 | /setcustomcolor where 117 | { 118 | pop 119 | } 120 | { 121 | Adobe_customcolor begin 122 | Adobe_customcolor 123 | { 124 | dup xcheck 125 | { 126 | bind 127 | } if 128 | pop pop 129 | } forall 130 | end 131 | Adobe_customcolor begin 132 | } ifelse 133 | } def 134 | /terminate 135 | { 136 | currentdict Adobe_customcolor eq 137 | { 138 | end 139 | } if 140 | } def 141 | /findcmykcustomcolor 142 | { 143 | 5 packedarray 144 | } def 145 | /setcustomcolor 146 | { 147 | exch 148 | aload pop pop 149 | 4 150 | { 151 | 4 index mul 4 1 roll 152 | } repeat 153 | 5 -1 roll pop 154 | setcmykcolor 155 | } def 156 | /setoverprint 157 | { 158 | pop 159 | } def 160 | currentdict readonly pop end 161 | setpacking 162 | %%EndResource 163 | %%BeginResource: procset Adobe_IllustratorA_AI3 1.1 3 164 | %%Title: (Adobe Illustrator (R) Version 3.0 Abbreviated Prolog) 165 | %%Version: 1.1 166 | %%CreationDate: (3/7/1994) () 167 | %%Copyright: ((C) 1987-1994 Adobe Systems Incorporated All Rights Reserved) 168 | currentpacking true setpacking 169 | userdict /Adobe_IllustratorA_AI3 61 dict dup begin put 170 | /initialize 171 | { 172 | userdict /Adobe_IllustratorA_AI3_vars 58 dict dup begin put 173 | /_lp /none def 174 | /_pf {} def 175 | /_ps {} def 176 | /_psf {} def 177 | /_pss {} def 178 | /_pjsf {} def 179 | /_pjss {} def 180 | /_pola 0 def 181 | /_doClip 0 def 182 | /cf currentflat def 183 | /_tm matrix def 184 | /_renderStart [/e0 /r0 /a0 /o0 /e1 /r1 /a1 /i0] def 185 | /_renderEnd [null null null null /i1 /i1 /i1 /i1] def 186 | /_render -1 def 187 | /_rise 0 def 188 | /_ax 0 def 189 | /_ay 0 def 190 | /_cx 0 def 191 | /_cy 0 def 192 | /_leading [0 0] def 193 | /_ctm matrix def 194 | /_mtx matrix def 195 | /_sp 16#020 def 196 | /_hyphen (-) def 197 | /_fScl 0 def 198 | /_cnt 0 def 199 | /_hs 1 def 200 | /_nativeEncoding 0 def 201 | /_useNativeEncoding 0 def 202 | /_tempEncode 0 def 203 | /_pntr 0 def 204 | /_tDict 2 dict def 205 | /_wv 0 def 206 | /Tx {} def 207 | /Tj {} def 208 | /CRender {} def 209 | /_AI3_savepage {} def 210 | /_gf null def 211 | /_cf 4 array def 212 | /_if null def 213 | /_of false def 214 | /_fc {} def 215 | /_gs null def 216 | /_cs 4 array def 217 | /_is null def 218 | /_os false def 219 | /_sc {} def 220 | /_i null def 221 | Adobe_IllustratorA_AI3 begin 222 | Adobe_IllustratorA_AI3 223 | { 224 | dup xcheck 225 | { 226 | bind 227 | } if 228 | pop pop 229 | } forall 230 | end 231 | end 232 | Adobe_IllustratorA_AI3 begin 233 | Adobe_IllustratorA_AI3_vars begin 234 | newpath 235 | } def 236 | /terminate 237 | { 238 | end 239 | end 240 | } def 241 | /_ 242 | null def 243 | /ddef 244 | { 245 | Adobe_IllustratorA_AI3_vars 3 1 roll put 246 | } def 247 | /xput 248 | { 249 | dup load dup length exch maxlength eq 250 | { 251 | dup dup load dup 252 | length 2 mul dict copy def 253 | } if 254 | load begin def end 255 | } def 256 | /npop 257 | { 258 | { 259 | pop 260 | } repeat 261 | } def 262 | /sw 263 | { 264 | dup length exch stringwidth 265 | exch 5 -1 roll 3 index mul add 266 | 4 1 roll 3 1 roll mul add 267 | } def 268 | /swj 269 | { 270 | dup 4 1 roll 271 | dup length exch stringwidth 272 | exch 5 -1 roll 3 index mul add 273 | 4 1 roll 3 1 roll mul add 274 | 6 2 roll /_cnt 0 ddef 275 | {1 index eq {/_cnt _cnt 1 add ddef} if} forall pop 276 | exch _cnt mul exch _cnt mul 2 index add 4 1 roll 2 index add 4 1 roll pop pop 277 | } def 278 | /ss 279 | { 280 | 4 1 roll 281 | { 282 | 2 npop 283 | (0) exch 2 copy 0 exch put pop 284 | gsave 285 | false charpath currentpoint 286 | 4 index setmatrix 287 | stroke 288 | grestore 289 | moveto 290 | 2 copy rmoveto 291 | } exch cshow 292 | 3 npop 293 | } def 294 | /jss 295 | { 296 | 4 1 roll 297 | { 298 | 2 npop 299 | (0) exch 2 copy 0 exch put 300 | gsave 301 | _sp eq 302 | { 303 | exch 6 index 6 index 6 index 5 -1 roll widthshow 304 | currentpoint 305 | } 306 | { 307 | false charpath currentpoint 308 | 4 index setmatrix stroke 309 | }ifelse 310 | grestore 311 | moveto 312 | 2 copy rmoveto 313 | } exch cshow 314 | 6 npop 315 | } def 316 | /sp 317 | { 318 | { 319 | 2 npop (0) exch 320 | 2 copy 0 exch put pop 321 | false charpath 322 | 2 copy rmoveto 323 | } exch cshow 324 | 2 npop 325 | } def 326 | /jsp 327 | { 328 | { 329 | 2 npop 330 | (0) exch 2 copy 0 exch put 331 | _sp eq 332 | { 333 | exch 5 index 5 index 5 index 5 -1 roll widthshow 334 | } 335 | { 336 | false charpath 337 | }ifelse 338 | 2 copy rmoveto 339 | } exch cshow 340 | 5 npop 341 | } def 342 | /pl 343 | { 344 | transform 345 | 0.25 sub round 0.25 add exch 346 | 0.25 sub round 0.25 add exch 347 | itransform 348 | } def 349 | /setstrokeadjust where 350 | { 351 | pop true setstrokeadjust 352 | /c 353 | { 354 | curveto 355 | } def 356 | /C 357 | /c load def 358 | /v 359 | { 360 | currentpoint 6 2 roll curveto 361 | } def 362 | /V 363 | /v load def 364 | /y 365 | { 366 | 2 copy curveto 367 | } def 368 | /Y 369 | /y load def 370 | /l 371 | { 372 | lineto 373 | } def 374 | /L 375 | /l load def 376 | /m 377 | { 378 | moveto 379 | } def 380 | } 381 | { 382 | /c 383 | { 384 | pl curveto 385 | } def 386 | /C 387 | /c load def 388 | /v 389 | { 390 | currentpoint 6 2 roll pl curveto 391 | } def 392 | /V 393 | /v load def 394 | /y 395 | { 396 | pl 2 copy curveto 397 | } def 398 | /Y 399 | /y load def 400 | /l 401 | { 402 | pl lineto 403 | } def 404 | /L 405 | /l load def 406 | /m 407 | { 408 | pl moveto 409 | } def 410 | }ifelse 411 | /d 412 | { 413 | setdash 414 | } def 415 | /cf {} def 416 | /i 417 | { 418 | dup 0 eq 419 | { 420 | pop cf 421 | } if 422 | setflat 423 | } def 424 | /j 425 | { 426 | setlinejoin 427 | } def 428 | /J 429 | { 430 | setlinecap 431 | } def 432 | /M 433 | { 434 | setmiterlimit 435 | } def 436 | /w 437 | { 438 | setlinewidth 439 | } def 440 | /H 441 | {} def 442 | /h 443 | { 444 | closepath 445 | } def 446 | /N 447 | { 448 | _pola 0 eq 449 | { 450 | _doClip 1 eq {clip /_doClip 0 ddef} if 451 | newpath 452 | } 453 | { 454 | /CRender {N} ddef 455 | }ifelse 456 | } def 457 | /n 458 | {N} def 459 | /F 460 | { 461 | _pola 0 eq 462 | { 463 | _doClip 1 eq 464 | { 465 | gsave _pf grestore clip newpath /_lp /none ddef _fc 466 | /_doClip 0 ddef 467 | } 468 | { 469 | _pf 470 | }ifelse 471 | } 472 | { 473 | /CRender {F} ddef 474 | }ifelse 475 | } def 476 | /f 477 | { 478 | closepath 479 | F 480 | } def 481 | /S 482 | { 483 | _pola 0 eq 484 | { 485 | _doClip 1 eq 486 | { 487 | gsave _ps grestore clip newpath /_lp /none ddef _sc 488 | /_doClip 0 ddef 489 | } 490 | { 491 | _ps 492 | }ifelse 493 | } 494 | { 495 | /CRender {S} ddef 496 | }ifelse 497 | } def 498 | /s 499 | { 500 | closepath 501 | S 502 | } def 503 | /B 504 | { 505 | _pola 0 eq 506 | { 507 | _doClip 1 eq 508 | gsave F grestore 509 | { 510 | gsave S grestore clip newpath /_lp /none ddef _sc 511 | /_doClip 0 ddef 512 | } 513 | { 514 | S 515 | }ifelse 516 | } 517 | { 518 | /CRender {B} ddef 519 | }ifelse 520 | } def 521 | /b 522 | { 523 | closepath 524 | B 525 | } def 526 | /W 527 | { 528 | /_doClip 1 ddef 529 | } def 530 | /* 531 | { 532 | count 0 ne 533 | { 534 | dup type (stringtype) eq {pop} if 535 | } if 536 | _pola 0 eq {newpath} if 537 | } def 538 | /u 539 | {} def 540 | /U 541 | {} def 542 | /q 543 | { 544 | _pola 0 eq {gsave} if 545 | } def 546 | /Q 547 | { 548 | _pola 0 eq {grestore} if 549 | } def 550 | /*u 551 | { 552 | _pola 1 add /_pola exch ddef 553 | } def 554 | /*U 555 | { 556 | _pola 1 sub /_pola exch ddef 557 | _pola 0 eq {CRender} if 558 | } def 559 | /D 560 | {pop} def 561 | /*w 562 | {} def 563 | /*W 564 | {} def 565 | /` 566 | { 567 | /_i save ddef 568 | 6 1 roll 4 npop 569 | concat pop 570 | userdict begin 571 | /showpage {} def 572 | 0 setgray 573 | 0 setlinecap 574 | 1 setlinewidth 575 | 0 setlinejoin 576 | 10 setmiterlimit 577 | [] 0 setdash 578 | /setstrokeadjust where {pop false setstrokeadjust} if 579 | newpath 580 | 0 setgray 581 | false setoverprint 582 | } def 583 | /~ 584 | { 585 | end 586 | _i restore 587 | } def 588 | /O 589 | { 590 | 0 ne 591 | /_of exch ddef 592 | /_lp /none ddef 593 | } def 594 | /R 595 | { 596 | 0 ne 597 | /_os exch ddef 598 | /_lp /none ddef 599 | } def 600 | /g 601 | { 602 | /_gf exch ddef 603 | /_fc 604 | { 605 | _lp /fill ne 606 | { 607 | _of setoverprint 608 | _gf setgray 609 | /_lp /fill ddef 610 | } if 611 | } ddef 612 | /_pf 613 | { 614 | _fc 615 | fill 616 | } ddef 617 | /_psf 618 | { 619 | _fc 620 | ashow 621 | } ddef 622 | /_pjsf 623 | { 624 | _fc 625 | awidthshow 626 | } ddef 627 | /_lp /none ddef 628 | } def 629 | /G 630 | { 631 | /_gs exch ddef 632 | /_sc 633 | { 634 | _lp /stroke ne 635 | { 636 | _os setoverprint 637 | _gs setgray 638 | /_lp /stroke ddef 639 | } if 640 | } ddef 641 | /_ps 642 | { 643 | _sc 644 | stroke 645 | } ddef 646 | /_pss 647 | { 648 | _sc 649 | ss 650 | } ddef 651 | /_pjss 652 | { 653 | _sc 654 | jss 655 | } ddef 656 | /_lp /none ddef 657 | } def 658 | /k 659 | { 660 | _cf astore pop 661 | /_fc 662 | { 663 | _lp /fill ne 664 | { 665 | _of setoverprint 666 | _cf aload pop setcmykcolor 667 | /_lp /fill ddef 668 | } if 669 | } ddef 670 | /_pf 671 | { 672 | _fc 673 | fill 674 | } ddef 675 | /_psf 676 | { 677 | _fc 678 | ashow 679 | } ddef 680 | /_pjsf 681 | { 682 | _fc 683 | awidthshow 684 | } ddef 685 | /_lp /none ddef 686 | } def 687 | /K 688 | { 689 | _cs astore pop 690 | /_sc 691 | { 692 | _lp /stroke ne 693 | { 694 | _os setoverprint 695 | _cs aload pop setcmykcolor 696 | /_lp /stroke ddef 697 | } if 698 | } ddef 699 | /_ps 700 | { 701 | _sc 702 | stroke 703 | } ddef 704 | /_pss 705 | { 706 | _sc 707 | ss 708 | } ddef 709 | /_pjss 710 | { 711 | _sc 712 | jss 713 | } ddef 714 | /_lp /none ddef 715 | } def 716 | /x 717 | { 718 | /_gf exch ddef 719 | findcmykcustomcolor 720 | /_if exch ddef 721 | /_fc 722 | { 723 | _lp /fill ne 724 | { 725 | _of setoverprint 726 | _if _gf 1 exch sub setcustomcolor 727 | /_lp /fill ddef 728 | } if 729 | } ddef 730 | /_pf 731 | { 732 | _fc 733 | fill 734 | } ddef 735 | /_psf 736 | { 737 | _fc 738 | ashow 739 | } ddef 740 | /_pjsf 741 | { 742 | _fc 743 | awidthshow 744 | } ddef 745 | /_lp /none ddef 746 | } def 747 | /X 748 | { 749 | /_gs exch ddef 750 | findcmykcustomcolor 751 | /_is exch ddef 752 | /_sc 753 | { 754 | _lp /stroke ne 755 | { 756 | _os setoverprint 757 | _is _gs 1 exch sub setcustomcolor 758 | /_lp /stroke ddef 759 | } if 760 | } ddef 761 | /_ps 762 | { 763 | _sc 764 | stroke 765 | } ddef 766 | /_pss 767 | { 768 | _sc 769 | ss 770 | } ddef 771 | /_pjss 772 | { 773 | _sc 774 | jss 775 | } ddef 776 | /_lp /none ddef 777 | } def 778 | /A 779 | { 780 | pop 781 | } def 782 | currentdict readonly pop end 783 | setpacking 784 | /annotatepage 785 | { 786 | } def 787 | %%EndResource 788 | %%EndProlog 789 | %%BeginSetup 790 | Adobe_cshow /initialize get exec 791 | Adobe_customcolor /initialize get exec 792 | Adobe_IllustratorA_AI3 /initialize get exec 793 | %%EndSetup 794 | 0 A 795 | u 796 | *u 797 | 0 O 798 | 0 g 799 | 0 i 800 | 0 J 0 j 1 w 4 M []0 d 801 | %AI3_Note: 802 | 0 D 803 | 74.8907 215.0693 m 804 | 74.041 243.9622 85.304 256.7226 108.6809 257.1476 c 805 | 132.0577 257.5727 146.7214 245.2467 149.6966 229.0954 c 806 | 152.6719 212.9441 150.9717 191.6925 156.9222 180.6416 c 807 | 162.8727 169.5907 166.698 161.09 176.8988 148.339 c 808 | 187.0996 135.588 193.4751 122.6245 196.4503 106.8983 c 809 | 199.4255 91.172 201.1257 83.7339 193.4751 75.6583 c 810 | 185.8245 67.5827 172.2234 54.4066 162.0226 69.2828 c 811 | 156.9158 76.7302 156.362 85.9914 164.9978 87.9843 c 812 | 170.5233 89.2594 174.4902 88.8343 178.5989 86.7092 c 813 | 182.7076 84.584 183.6993 85.5757 178.7406 89.2594 c 814 | 173.7819 92.943 172.7901 89.5427 174.4902 95.4932 c 815 | 176.1904 101.4437 178.4436 112.1015 173.7682 123.8608 c 816 | 171.6149 129.2767 164.3121 144.122 157.4349 147.7774 C 817 | 156.799 148.1155 154.9871 148.8579 156.2138 147.3473 c 818 | 158.0807 145.0483 167.9587 130.4785 170.7682 121.7774 c 819 | 173.7716 112.4762 174.2069 103.5688 172.6484 97.9017 c 820 | 171.09 92.2346 168.3981 89.9678 165.1395 89.9678 c 821 | 161.8809 89.9678 158.9057 88.4093 158.9057 95.9182 c 822 | 158.9057 103.4272 159.6849 114.7614 155.6471 124.3246 c 823 | 151.6093 133.8879 146.7214 140.4759 145.6588 144.5137 c 824 | 144.5962 148.5515 142.2585 159.3899 137.3706 165.5529 c 825 | 132.4828 171.7159 130.3576 175.7537 132.9078 182.7667 c 826 | 135.458 189.7798 133.5453 191.6925 128.4449 193.1801 c 827 | 123.3445 194.6677 116.544 196.7929 114.8439 200.1931 c 828 | 113.1437 203.5934 114.2063 210.3939 118.0316 212.0941 c 829 | 121.8569 213.7942 128.2324 211.4565 128.4449 206.5686 c 830 | 128.6575 201.6807 126.3198 199.1305 126.9573 198.068 c 831 | 127.5949 197.0054 130.9951 195.3052 132.6953 197.2179 c 832 | 134.3954 199.1305 134.8204 205.081 133.1203 210.6064 c 833 | 131.4202 216.1319 130.5701 219.9572 124.4071 221.2323 c 834 | 118.2441 222.5074 115.4814 222.0823 112.5062 218.257 c 835 | 109.531 214.4317 108.2559 208.2688 109.1059 203.8059 c 836 | 109.956 199.3431 108.2559 201.8933 105.2806 202.1058 c 837 | 102.3054 202.3183 103.1555 202.5308 100.1802 202.3183 c 838 | 97.205 202.1058 98.2676 204.0184 98.055 207.2062 c 839 | 97.8425 210.3939 97.4175 216.9819 92.9546 219.5321 c 840 | 88.4918 222.0823 80.8412 219.1071 81.0537 208.4813 c 841 | 81.2662 197.8554 84.879 192.755 87.0042 196.5803 c 842 | 89.1293 200.4056 88.0668 198.493 85.9416 200.1931 c 843 | 83.8164 201.8933 82.3288 208.9063 84.6665 211.0315 c 844 | 87.0042 213.1566 89.7669 213.1566 91.2545 211.8815 c 845 | 92.7421 210.6064 95.0798 206.3561 94.6548 203.5934 c 846 | 94.2297 200.8307 94.0172 200.6182 91.2545 198.7055 c 847 | 88.4918 196.7929 87.4292 195.0927 84.2415 192.9676 c 848 | 81.0537 190.8424 79.7786 185.9545 82.3288 184.6794 c 849 | 84.879 183.4043 85.0915 183.6168 87.2167 180.4291 c 850 | 89.3419 177.2413 92.9546 175.7537 101.8804 177.2413 c 851 | 110.8061 178.7289 114.472 180.8449 121.2194 183.1918 c 852 | 126.1073 184.8919 124.4071 184.6794 126.1073 186.5921 c 853 | 127.8074 188.5047 130.5701 185.742 128.0199 184.0419 c 854 | 125.4697 182.3417 119.7318 180.6416 115.4814 179.154 c 855 | 111.2311 177.6663 106.3432 173.416 97.4175 173.841 c 856 | 88.4918 174.2661 94.6548 174.0536 91.8921 174.2661 c 857 | 89.1293 174.4786 87.8542 174.0536 90.8295 171.9284 c 858 | 93.8047 169.8032 93.5922 169.1657 96.1424 168.3156 c 859 | 98.6926 167.4655 102.0929 167.4655 106.1307 168.9532 c 860 | 110.1685 170.4408 120.3693 174.9036 123.5571 177.0288 c 861 | 126.7448 179.154 129.295 176.3912 126.1073 174.2661 c 862 | 122.9195 172.1409 122.0694 172.7785 119.0942 170.8658 c 863 | 116.119 168.9532 110.5935 165.7654 106.9808 162.3651 c 864 | 103.368 158.9649 102.5179 158.7523 98.055 158.5398 c 865 | 93.5922 158.3273 90.8295 163.0027 88.9168 165.1278 c 866 | 87.0042 167.253 87.2167 168.5281 84.879 171.0783 c 867 | 82.5413 173.6285 82.3288 172.991 81.9038 170.2283 c 868 | 81.4787 167.4655 78.291 160.4525 75.5283 155.7771 c 869 | 72.7655 151.1017 72.553 145.3638 72.9781 141.326 c 870 | 73.4031 137.2882 72.3405 136.8631 69.1528 132.1878 c 871 | 65.965 127.5124 60.6521 113.6988 59.802 109.2359 c 872 | 58.952 104.7731 57.8894 95.6349 58.3144 90.3219 c 873 | 58.7394 85.009 57.2518 83.9464 53.4265 87.5592 c 874 | 49.6012 91.172 48.3261 95.2098 48.5386 100.5227 c 875 | 48.7204 105.068 49.3516 108.2774 49.9349 109.9441 c 876 | 50.5182 111.6108 49.9557 112.7983 48.7512 110.7236 c 877 | 46.1324 106.2131 45.9884 98.3976 46.626 95.6349 c 878 | 47.2635 92.8721 47.4761 87.9843 54.4891 81.3962 c 879 | 61.5022 74.8082 71.703 65.67 80.2036 59.507 c 880 | 88.7043 53.344 91.6795 45.6934 79.141 40.168 C 881 | 87.0042 29.5421 91.2545 24.0167 87.8542 17.0037 C 882 | 94.8673 21.0415 92.1685 30.5606 88.7682 33.1108 c 883 | 85.368 35.661 87.4292 37.6178 90.4044 35.7051 c 884 | 93.3797 33.7925 94.4423 29.9672 106.1307 30.1797 c 885 | 117.8191 30.3922 130.4218 31.5766 137.4349 41.7774 c 886 | 144.4479 51.9783 145.8017 43.3946 144.1016 37.4441 c 887 | 142.4014 31.4936 138.2207 18.0662 144.8087 19.3413 C 888 | 145.6588 27.2045 147.5715 34.005 147.5715 42.5057 c 889 | 147.5715 51.0063 148.4349 55.1108 147.7682 67.4441 c 890 | 147.1259 79.3277 152.2468 80.1211 157.5597 80.1211 c 891 | 162.8727 80.1211 161.1725 76.7209 157.7723 76.9334 c 892 | 154.372 77.1459 150.7592 75.8708 150.5467 67.1576 c 893 | 150.3342 58.4444 150.5467 59.2945 152.0343 51.4314 c 894 | 153.5219 43.5682 153.7344 41.2306 152.4593 32.5174 c 895 | 151.1842 23.8042 150.1217 19.1288 155.8596 13.8159 c 896 | 161.5976 8.503 170.3108 9.9906 174.7736 13.3909 c 897 | 179.2365 16.7911 187.7371 24.6543 195.3877 27.2045 c 898 | 203.0383 29.7547 211.114 31.6673 215.3643 35.9176 c 899 | 219.6147 40.168 218.5521 43.1432 214.0892 45.4809 c 900 | 209.6264 47.8186 205.376 46.756 201.9757 50.5813 c 901 | 198.5755 54.4066 196.8753 62.9073 198.1504 67.3701 c 902 | 199.4255 71.833 200.9132 69.9203 200.9132 66.7326 c 903 | 200.9132 63.5448 201.1257 60.5696 204.3134 56.5318 c 904 | 207.5012 52.494 210.4764 50.5813 215.5768 47.3936 c 905 | 220.6772 44.2058 223.865 39.1054 217.4895 34.6425 c 906 | 211.114 30.1797 207.5012 27.6295 202.1883 25.5043 c 907 | 196.8753 23.3792 188.1622 18.2788 182.8492 12.9658 c 908 | 177.5363 7.6529 174.5611 2.9776 164.1478 2.9776 c 909 | 153.7344 2.9776 148.9787 5.4759 145.8713 11.6907 c 910 | 143.7462 15.9411 142.6836 15.3035 137.7957 15.516 c 911 | 132.9078 15.7286 116.544 15.9411 103.793 15.7286 c 912 | 91.042 15.516 86.7917 13.3909 81.0537 8.7155 c 913 | 75.3157 4.0401 73.1906 0.4273 62.3522 4.0401 c 914 | 51.5139 7.6529 45.7759 11.6907 29.6246 14.8785 c 915 | 13.4734 18.0662 22.1865 16.5786 12.4108 18.7038 c 916 | 2.635 20.829 3.2726 25.5043 4.5477 29.3296 c 917 | 5.8228 33.1549 9.0105 39.1054 6.2478 46.9685 c 918 | 3.4851 54.8316 4.5477 62.9073 11.9857 62.9073 c 919 | 19.4238 62.9073 26.4369 61.4197 29.4121 71.1954 c 920 | 32.3874 80.9712 33.2374 73.3206 32.3874 70.7704 c 921 | 31.5373 68.2202 31.1123 61.2071 24.5242 60.1446 c 922 | 17.9362 59.082 16.4486 60.5696 12.4108 60.5696 c 923 | 8.373 60.5696 6.6728 57.8069 8.798 53.1315 c 924 | 10.9232 48.4561 13.2608 43.5682 12.8358 39.5304 c 925 | 12.4108 35.4926 11.9857 34.005 9.0105 30.1797 c 926 | 6.0353 26.3544 6.4603 24.4417 11.7732 23.1666 c 927 | 17.0861 21.8915 26.6494 19.3413 35.5751 17.2162 c 928 | 44.5008 15.091 45.1384 15.091 60.6521 11.0532 c 929 | 76.1658 7.0154 80.4161 14.2409 81.6912 22.9541 c 930 | 82.9664 31.6673 77.0159 39.9555 71.4904 48.2436 c 931 | 65.965 56.5318 60.0145 66.095 52.789 74.8082 c 932 | 45.5634 83.5214 41.3131 84.159 37.7003 82.2463 c 933 | 34.0875 80.3337 33.4499 80.7587 33.2374 85.6466 c 934 | 33.0249 90.5345 32.5999 93.7222 36.6377 100.9478 c 935 | 40.6755 108.1734 44.2883 116.0365 48.5386 128.1499 c 936 | 52.789 140.2634 56.6143 142.6011 63.8398 153.0144 c 937 | 71.0654 163.4277 67.8777 159.3899 72.9781 166.4029 c 938 | 78.0785 173.416 76.5908 172.1409 76.1658 183.1918 c 939 | 75.7408 194.2427 75.3157 200.6182 74.8907 215.0693 c 940 | f 941 | 1 D 942 | 54.5971 128.6793 m 943 | 55.6961 127.3382 57.2428 130.4814 58.871 131.6548 c 944 | 60.3363 132.9959 60.9469 134.8818 60.6213 136.7258 c 945 | 60.4584 137.7316 58.8303 137.3963 58.5046 137.0611 c 946 | 57.5278 136.0552 57.7262 134.4523 57.0393 133.0378 c 947 | 56.2252 131.3615 53.498 130.0204 54.5971 128.6793 c 948 | f 949 | 145.951 173.0707 m 950 | 148.2714 171.137 149.6701 169.4579 150.9452 172.3269 c 951 | 152.2203 175.1958 152.2203 176.3647 149.1388 177.5335 c 952 | 146.0573 178.7024 144.6759 179.9775 143.2946 181.5713 c 953 | 141.9132 183.1652 141.4224 180.4368 142.5507 177.746 c 954 | 143.9321 174.452 144.7375 174.0819 145.951 173.0707 c 955 | f 956 | 98.0873 199.4234 m 957 | 96.4935 199.7421 94.5808 199.6359 93.5182 198.3608 c 958 | 93.0932 197.9357 93.3057 196.7669 94.0495 196.4481 c 959 | 95.0058 196.0231 95.6434 196.9794 95.8559 197.7232 c 960 | 95.9622 198.042 96.0684 198.467 96.3872 198.5733 c 961 | 96.8122 198.7858 97.4336 198.6093 97.8748 198.7858 c 962 | 98.4061 198.9983 98.1936 199.4234 98.0873 199.4234 c 963 | f 964 | 105.5994 199.1305 m 965 | 106.2369 198.1742 107.4058 198.1742 108.3621 197.7492 c 966 | 108.8934 197.5367 109.956 197.2179 110.2748 197.9617 c 967 | 111.0186 200.2994 107.8346 199.5556 106.3432 199.5556 c 968 | 106.0244 199.5556 105.2806 199.6618 105.5994 199.1305 c 969 | f 970 | 121.1016 209.4441 m 971 | 122.5269 209.3691 124.5182 206.7774 124.7124 203.8036 c 972 | 124.7431 203.3336 125.9489 203.3623 126.2015 203.838 c 973 | 126.8964 205.0116 126.4187 206.3414 126.0992 207.7666 c 974 | 125.8436 208.9067 124.4549 210.1084 123.2792 210.6309 c 975 | 122.4954 211.0229 121.7116 211.1535 120.6665 211.0229 c 976 | 120.4052 210.8922 119.5182 209.5274 121.1016 209.4441 c 977 | f 978 | 89.4377 210.1679 m 979 | 88.1053 210.0672 88.5823 209.0454 88.6441 208.2274 C 980 | 90.4855 207.1912 90.6621 204.8539 91.0372 203.0018 c 981 | 91.0901 202.3005 92.1243 202.6138 92.2235 202.8563 c 982 | 93.0524 204.3294 92.0434 206.0161 91.6772 207.7514 c 983 | 91.3728 208.6687 90.7674 209.6807 89.8964 210.3201 c 984 | 89.7707 210.4281 89.5546 210.1767 89.4377 210.1679 c 985 | f 986 | 130.0182 242.7358 m 987 | 128.7024 243.8124 126.6432 244.2358 126.0182 242.4858 c 988 | 125.3932 240.9858 125.6432 239.4858 125.2682 237.8608 c 989 | 125.2682 237.3608 124.6432 237.2358 124.2682 236.7358 c 990 | 123.7682 236.1108 123.8932 235.3608 124.1432 235.1108 c 991 | 125.3932 233.8608 127.6432 236.3608 129.2682 237.2358 c 992 | 130.5182 237.9858 132.2682 236.9858 133.6432 237.8608 c 993 | 134.0182 238.1108 134.1432 238.7358 133.7682 239.2358 c 994 | 132.8932 240.7358 131.3932 241.6108 130.0182 242.7358 c 995 | f 996 | *U 997 | 0 D 998 | 168.2848 73.7743 m 999 | 168.5016 74.6532 168.9399 76.3409 169.7682 76.6108 c 1000 | 170.0768 76.7112 170.3298 76.5961 170.4302 76.2876 c 1001 | 170.6103 75.7354 170.0485 72.6062 170.2761 71.9079 c 1002 | 170.5247 71.1445 171.3895 71.2465 172.023 71.4529 c 1003 | 173.4685 71.9237 174.2959 73.6304 174.2429 73.7927 c 1004 | 174.2219 73.8576 174.1949 73.8848 174.1464 73.869 c 1005 | 173.9189 73.7949 173.7245 73.013 173.0585 72.7962 c 1006 | 172.6525 72.6638 172.3397 72.7417 172.2023 73.164 c 1007 | 172.0594 73.6024 172.6218 76.8395 172.3784 77.5868 c 1008 | 172.1352 78.3338 171.3801 78.5011 170.698 78.2789 c 1009 | 169.1062 77.7604 168.4145 75.3615 168.0211 73.922 C 1010 | 167.9833 73.9276 L 1011 | 168.1952 77.2482 L 1012 | 166.2463 76.6135 L 1013 | 166.145 69.7539 L 1014 | 167.9804 70.3516 L 1015 | 168.0209 71.5506 168.0627 72.9115 168.2848 73.7743 c 1016 | f 1017 | 176.8278 73.0178 m 1018 | 178.4034 73.5309 179.1132 75.4328 179.0445 75.644 c 1019 | 179.0232 75.709 178.9751 75.7472 178.9263 75.7312 c 1020 | 178.7964 75.6889 178.4863 74.6 177.593 74.309 c 1021 | 177.2032 74.182 176.8475 74.2816 176.7627 74.5416 c 1022 | 176.6359 74.9313 176.7162 75.6223 176.7309 76.1839 C 1023 | 176.7792 79.2896 L 1024 | 178.9394 79.993 L 1025 | 178.9284 80.7439 L 1026 | 176.7519 80.0351 L 1027 | 176.8533 82.9783 L 1028 | 174.9009 81.8573 L 1029 | 174.8182 75.3274 L 1030 | 174.8024 74.6037 174.7658 73.9989 174.8716 73.6741 c 1031 | 175.1466 72.8296 176.0159 72.7535 176.8278 73.0178 c 1032 | f 1033 | U 1034 | %%PageTrailer 1035 | gsave annotatepage grestore showpage 1036 | %%Trailer 1037 | Adobe_IllustratorA_AI3 /terminate get exec 1038 | Adobe_customcolor /terminate get exec 1039 | Adobe_cshow /terminate get exec 1040 | Adobe_packedarray /terminate get exec 1041 | %%EOF 1042 | -------------------------------------------------------------------------------- /src/images/tux-color.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/tux-color.pdf -------------------------------------------------------------------------------- /src/images/w.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-2.0 EPSF-2.0 2 | %%Title: w.eps 3 | %%CreationDate: Sun Apr 2 14:08:19 2000 4 | %%For: lwang@amath8.amt.ac.cn (Wang Lei) 5 | %%BoundingBox: 100 100 172 172 6 | %%EndComments 7 | 100 100 translate 8 | 0 0 moveto 9 | 72 72 rlineto 10 | 72 neg 0 rlineto 11 | 72 72 neg rlineto 12 | stroke 13 | 0 0 moveto 14 | /Times-Roman findfont 15 | 72 scalefont 16 | setfont 17 | (W) show 18 | -------------------------------------------------------------------------------- /src/images/w.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/w.pdf -------------------------------------------------------------------------------- /src/images/wide.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-2.0 EPSF-2.0 2 | %%Title: wide.eps 3 | %%Creator: fig2dev Version 3.2.3 Patchlevel 4 | %%CreationDate: Wed Apr 12 12:23:10 2000 5 | %%For: xszhang@AMath1 (Zhang Xiangsun) 6 | %%BoundingBox: 0 0 476 71 7 | %%Magnification: 1.0000 8 | %%EndComments 9 | /$F2psDict 200 dict def 10 | $F2psDict begin 11 | $F2psDict /mtrx matrix put 12 | /col-1 {0 setgray} bind def 13 | /col0 {0.000 0.000 0.000 srgb} bind def 14 | /col1 {0.000 0.000 1.000 srgb} bind def 15 | /col2 {0.000 1.000 0.000 srgb} bind def 16 | /col3 {0.000 1.000 1.000 srgb} bind def 17 | /col4 {1.000 0.000 0.000 srgb} bind def 18 | /col5 {1.000 0.000 1.000 srgb} bind def 19 | /col6 {1.000 1.000 0.000 srgb} bind def 20 | /col7 {1.000 1.000 1.000 srgb} bind def 21 | /col8 {0.000 0.000 0.560 srgb} bind def 22 | /col9 {0.000 0.000 0.690 srgb} bind def 23 | /col10 {0.000 0.000 0.820 srgb} bind def 24 | /col11 {0.530 0.810 1.000 srgb} bind def 25 | /col12 {0.000 0.560 0.000 srgb} bind def 26 | /col13 {0.000 0.690 0.000 srgb} bind def 27 | /col14 {0.000 0.820 0.000 srgb} bind def 28 | /col15 {0.000 0.560 0.560 srgb} bind def 29 | /col16 {0.000 0.690 0.690 srgb} bind def 30 | /col17 {0.000 0.820 0.820 srgb} bind def 31 | /col18 {0.560 0.000 0.000 srgb} bind def 32 | /col19 {0.690 0.000 0.000 srgb} bind def 33 | /col20 {0.820 0.000 0.000 srgb} bind def 34 | /col21 {0.560 0.000 0.560 srgb} bind def 35 | /col22 {0.690 0.000 0.690 srgb} bind def 36 | /col23 {0.820 0.000 0.820 srgb} bind def 37 | /col24 {0.500 0.190 0.000 srgb} bind def 38 | /col25 {0.630 0.250 0.000 srgb} bind def 39 | /col26 {0.750 0.380 0.000 srgb} bind def 40 | /col27 {1.000 0.500 0.500 srgb} bind def 41 | /col28 {1.000 0.630 0.630 srgb} bind def 42 | /col29 {1.000 0.750 0.750 srgb} bind def 43 | /col30 {1.000 0.880 0.880 srgb} bind def 44 | /col31 {1.000 0.840 0.000 srgb} bind def 45 | 46 | end 47 | save 48 | newpath 0 71 moveto 0 0 lineto 476 0 lineto 476 71 lineto closepath clip newpath 49 | -138.0 168.0 translate 50 | 1 -1 scale 51 | 52 | /cp {closepath} bind def 53 | /ef {eofill} bind def 54 | /gr {grestore} bind def 55 | /gs {gsave} bind def 56 | /sa {save} bind def 57 | /rs {restore} bind def 58 | /l {lineto} bind def 59 | /m {moveto} bind def 60 | /rm {rmoveto} bind def 61 | /n {newpath} bind def 62 | /s {stroke} bind def 63 | /sh {show} bind def 64 | /slc {setlinecap} bind def 65 | /slj {setlinejoin} bind def 66 | /slw {setlinewidth} bind def 67 | /srgb {setrgbcolor} bind def 68 | /rot {rotate} bind def 69 | /sc {scale} bind def 70 | /sd {setdash} bind def 71 | /ff {findfont} bind def 72 | /sf {setfont} bind def 73 | /scf {scalefont} bind def 74 | /sw {stringwidth} bind def 75 | /tr {translate} bind def 76 | /tnt {dup dup currentrgbcolor 77 | 4 -2 roll dup 1 exch sub 3 -1 roll mul add 78 | 4 -2 roll dup 1 exch sub 3 -1 roll mul add 79 | 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb} 80 | bind def 81 | /shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul 82 | 4 -2 roll mul srgb} bind def 83 | /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def 84 | /$F2psEnd {$F2psEnteredState restore end} def 85 | 86 | $F2psBegin 87 | %%Page: 1 1 88 | 10 setmiterlimit 89 | 0.06000 0.06000 sc 90 | % Polyline 91 | 15.000 slw 92 | n 2325 1650 m 10200 1650 l 10200 2775 l 2325 2775 l 93 | cp gs col0 s gr 94 | /Times-Roman ff 540.00 scf sf 95 | 3090 2340 m 96 | gs 1 -1 sc (A Very, Very Wide Graphics) col0 sh gr 97 | $F2psEnd 98 | rs 99 | -------------------------------------------------------------------------------- /src/images/wide.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WenboSheng/epslatex-cn/3a08a558b5dd0064684dbe3f72db94c3b134e49c/src/images/wide.pdf -------------------------------------------------------------------------------- /src/makefiles.bat: -------------------------------------------------------------------------------- 1 | xelatex -synctex=1 -interaction=nonstopmode --shell-escape -output-directory .. epslatex-cn 2 | biber ../epslatex-cn 3 | zhmakeindex ../epslatex-cn 4 | xelatex -synctex=1 -interaction=nonstopmode --shell-escape -output-directory .. epslatex-cn 5 | -------------------------------------------------------------------------------- /src/part1.tex: -------------------------------------------------------------------------------- 1 | %part1.tex 2 | \part{背景知识} 3 | 4 | \section{简介}\label{sec:introduction} 5 | 当高德纳编写 \TeX{} 的时候,还没有 PostScript/\file{eps}、\file{jpeg}、\file{gif} 以及其它图像格式。 6 | \marginpar{历史渊源} 7 | 因此 \file{dvi} 文件对于图像导入并没有直接的支持。 8 | 不过,\TeX{} 允许\file{dvi} 文件中包含 \cmd{special} 命令, 9 | 通过它可以向调用 \file{dvi} 文件的程序传递命令。 10 | 因此,凡是调用 \file{dvi} 的程序支持的图像格式, 11 | \TeX\ 和 \LaTeX\ 都能够导入。 12 | 13 | 过去的许多年来,\file{dvi} 通常都被转为 PostScript 格式, 14 | 进而标准的插图格式是 Encapsulated PostScript(\file{eps})图像, 15 | 因为它是PostScript语言的一个子集。 16 | 在 \LaTeX{} 中插入\file{eps}图像最初通过低层命令 \cmd{special} 来完成。 17 | 为了使插图更加方便并且更具有可移植性, 18 | 专门为 \LaTeX 2.09 设计了两个高层的宏包 \pkg{epsf} 和 \pkg{psfig}。 19 | \textsf{epsf} 提供了 \cmd{epsfbox} 命令来插入图片, 20 | 此外另有三个命令来控制图片的缩放。 21 | 在 \pkg{psfig} 中,\cmd{psfig} 命令除了用来插入图片,还有缩放和旋转功能。 22 | 不过,尽管 \pkg{psfig} 的句法更受欢迎,它的代码却没有 \pkg{epsf} 健壮。 23 | 于是作为这两个宏包的结合的产物, 24 | \pkg{epsfig} 宏包使用 \pkg{psfig} 的句法和大部分 \pkg{epsf} 的健壮代码。 25 | 不过,\pkg{epsfig} 仍然使用了一些不健壮的 \pkg{psfig} 代码。 26 | 27 | 随着 1994 年 \LaTeXe{} 的发布, 28 | \marginpar{\LaTeX{}\\图形宏集} 29 | \LaTeX 3 小组认识到在 \LaTeX{} 插图中存在的一些普遍问题。 30 | 通过努力,他们开发出了“\LaTeX\ 图形宏集”,\footnote{ 31 | 已经有 \LaTeX{} 图形宏集的 plain \TeX{} 版本, 32 | 相关文件请见 \href{ftp://ctan.tug.org/tex-archive/macros/plain/graphics/}{CTAN/macros/generic/graphics/}} 33 | 并全部重写了其中的命令。 34 | 比起其它的插图命令,他们的命令更高效、更健壮、更具有可移植性。 35 | 36 | \LaTeX{} 图形宏集包括“标准”的 \pkg{graphics} 宏包和“扩展”的 \pkg{graphicx} 宏包。 37 | 这两个宏包都有一个 \cmd{includegraphis} 命令,不过版本不同。 38 | 类似 \pkg{psfig} 的句法, 39 | \pkg{graphicx} 版的 \cmd{includegraphis} 采用“命名参数(named arguments)”。 40 | 这使用起来比较简单方便,却违反了 \LaTeX{} 关于可选参数放置位置的语法指南方针。 41 | 作为折中方案,就有了两种版本的 \cmd{includegraphics}。 42 | 其中,\pkg{graphics} 的版本遵从 \LaTeX{} 的语法规则, 43 | 而\pkg{graphicx} 的版本则采用更为简便的命名参数。 44 | \pkg{graphicx} 版本的 \cmd{includegraphics} 支持图形的缩放和旋转, 45 | 而 \pkg{graphics} 版本的 \cmd{includegraphics} 则必须被置于 \cmd{scalebox} 或 \cmd{rotatebox} 才能达到同样的效果。 46 | 47 | 本文档使用 \pkg{graphicx} 宏包,因为它的句法比 \pkg{graphics} 宏包更加简便易用。 48 | 其实这两个宏包具有相同的功能,本文档中的例子同样可以用 \pkg{graphics} 宏包完成, 49 | 只不过相应的命令有些笨拙和缺少一点效率。 50 | 关于这两个宏包详细的说明可参见 \LaTeX{} 图形宏集的文档~\cite{grfguide}。 51 | 52 | 出于向后兼容性,\LaTeX\ 图形宏包套件中也提供了一个 \pkg{epsfig} 宏包, 53 | 用以替代之前 \LaTeXe\ 的 \pkg{epsfig}。 54 | 新的\pkg{epsfig} 定义了 \cmd{epsfbox}、\cmd{psfig} 和 \cmd{epsfig} 等命令。 55 | 不过它们只是调用 \cmd{includegraphics} 命令的简单封装。 56 | 由于这些封装效率没有直接使用 \cmd{includegraphics} 命令高, 57 | 因此,该 \pkg{epsfig} 宏包应当只用于旧文档。 58 | 在编写新文档时要用 \cmd{includegraphics}。 59 | 60 | 除了改进 \file{eps} 图片的部分, 61 | \marginpar{非 \file{eps}\\图形} 62 | \LaTeX{} 图形宏集还处理非 \file{eps} 图像格式的插图问题, 63 | 例如\file{jpeg} 和 \file{gif}等。 64 | 由于 \file{dvi} 到 \file{ps} 的转换程序一般不直接支持大部分的非\file{eps} 格式, 65 | 向 PostScript 文档中插入这些图像之前相关图像必须首先转成 \file{eps} 格式。 66 | 尽管这种图像格式的预处理通常是最佳办法, 67 | 不过,\LaTeX\ 图形宏集还提供了另一种选择:\file{dvi} 转 \file{ps} 时自动地实时转换图像格式。 68 | 第 \ref{ssec:convertor} 节(\pageref{ssec:convertor} 页)介绍了一下图像转换程序, 69 | 第 \ref{sec:dvips-noneps} 节(\pageref{sec:dvips-noneps} 页) 讲述了如何在 \file{dvi} 转 \file{ps} 时使用非 \file{eps} 格式的图像。 70 | 71 | 过去,PostScript 通常是 \LaTeX{} 文档的最终格式, 72 | \marginpar{\pdfTeX} 73 | 整个编译过程有两个步骤: 74 | (1) 使用 \LaTeX{} 生成 \file{dvi} 文件, 75 | (2) 使用一个 \file{dvi} 到 \file{ps} 的转换程序(例如\prgname{dvips}) 来生成 PostScript 文件。 76 | 之后,随着 Adobe 公司的 \file{pdf} 格式开始流行,编译过程又加了第三步: 77 | (3) 使用 \prgname{Ghostscript}\footnote{ 78 | 自由软件,见第 \ref{ssec:gs} 节(\pageref{ssec:gs} 页)。}、 79 | \prgname{Adobe Acrobat}\footnote{ 80 | 商业软件,见 \url{www.adobe.com}} 81 | 或者 \prgname{PStill}\footnote{ 82 | 共享软件,见 \url{www.pstill.com}} 83 | 等工具将 PostScript 文件转成 \file{pdf} 文件。 84 | 85 | 然而,这种三步骤过程 \LaTeX-\prgname{dvips}-\prgname{ghostscript} 不仅很繁琐, 86 | 而且很难实现一些 \file{pdf} 特性,比如超链接。 87 | 为了改进这一点,\HanTheThanh{} 写了一个工具叫做 \TeX2PDF, 88 | 这一工具修改了 \TeX\ 引擎,可以直接从 \TeX{} 生成 \file{pdf}。 89 | \TeX2PDF 最终重命名为 \pdfTeX, 90 | 并且在许多志愿者的帮助下(托高德纳的福)进行扩展, 91 | 进而实现了 \TeX{} 的全部排版功能。 92 | \pdfTeX 从名称上看来输出的是 \file{pdf}, 93 | 不过它也能输出 \file{dvi} 格式,并且与原先 \TeX{} 引擎的输出结果相同。 94 | 95 | 如同 \prgname{latex} 命令使用 \TeX{} 引擎处理 \LaTeX{} 文档并生成 \file{dvi} 文件,\footnote{ 96 | 现代的 \TeX 发行版本中,\prgname{latex} 命令使用的也是 \pdfTeX{} 引擎。——译注} 97 | \prgname{pdflatex} 命令使用 \pdfTeX{} 引擎处理 \LaTeX{} 文档,并直接生成 \file{pdf} 文件。 98 | 99 | \pdfTeX{} 的一个重要特性就是原生支持许多图像格式: 100 | \marginpar{\pdfTeX{} 和图像} 101 | \file{jpeg}、\file{png}、\file{pdf}、\MetaPost。 102 | 尽管老版本的 \pdfTeX{} 还支持 \file{tiff} 文件,目前的 \pdfTeX{} 版本不支持 \file{tiff}。 103 | 104 | 另外要注意的是,\pdfTeX{} 不能直接导入 \file{eps} 文件\footnote{ 105 | \pdfTeX{} 可以导入由 \prgname{PurifyEPS} 处理的 \file{eps} 文件, 106 | 见第 \ref{ssec:purifyeps} 节(\pageref{ssec:purifyeps} 页)。}, 107 | 用户需要用 \prgname{epstopdf} 等程序将 \file{eps} 文件转成 \file{pdf} 格式, 108 | 不过这样就不能直接使用 \pkg{PSfrag} 宏包(见第 \ref{ssec:psfrag} 节,\pageref{ssec:psfrag} 页)。 109 | 110 | 目前\footnote{ 111 | 此段由译者添加}, 112 | \marginpar{其它编译引擎} 113 | 除了 \prgname{latex}+\prgname{dvips} 和 \prgname{pdflatex} 之外, 114 | 还有几种常见的编译方式: 115 | \begin{description} 116 | \item \prgname{dvipdfmx} 可以从 \file{dvi} 文件生成 \file{pdf} 文件。 117 | \item \prgname{xelatex} 可以直接生成 \file{pdf} 文件。支持UTF-8编码和使用各种字体。 118 | \item \prgname{lualatex} 作为 \prgname{pdflatex} 的后继引擎,引入了Lua动态编程语言。 119 | 可以直接生成 \file{pdf} 文件。支持UTF-8编码和使用各种字体。 120 | \end{description} 121 | 出于技术上的先进性、稳定性以及效率和兼容性考虑, 122 | 一般而言推荐使用 \prgname{xelatex} 编译方式。 123 | 特别是对于中文文档,这样可以直接使用系统字体,避免了繁琐的中文配置过程。 124 | 而对于英文文档,也可以考虑使用 \prgname{pdflatex}。 125 | 126 | 以上几种编译方式都原生支持 \file{eps}、\file{pdf}、\file{jpg}、\file{png} 等各种图片格式。 127 | 不过这样就不能直接使用 \pkg{PSfrag} 宏包(见第 \ref{ssec:psfrag} 节,\pageref{ssec:psfrag} 页), 128 | 因为该宏包要求输出格式是 PostScript。 129 | 130 | 131 | \section{\LaTeX{} 术语}\label{sec:terminology} 132 | 133 | 任何 \LaTeX{} 对象(字符,图形等)都把\emphi{盒子}作为单位 \cite[103页]{Lamport1994}。 134 | 每个盒子在它的左侧均有一个\emphi{参考点}(\emphi{Reference point})。 135 | 盒子的\emphi{基线}(\emphi{baseline},见图~\ref{fig:samplebox})是一条通过参考点的水平线。 136 | 当 \LaTeX{} 从左到右排列文本时, 137 | 每一字符的参考点排成一条水平直线,称为\emphi{当前基线}(\emphi{current baseline}), 138 | 并使它与字符的基线对齐。 139 | \LaTeX{} 也用同样的方法来处理图形和其它对象,每个对象的参考点都被放置于当前基线上。 140 | 141 | \begin{figure} 142 | \centering 143 | \includegraphics[width=.4\linewidth]{latex-box} 144 | \caption{\LaTeX{}~盒子示例} 145 | \label{fig:samplebox} 146 | \end{figure} 147 | 148 | 每一个盒子的大小由三个长度决定: 149 | \emphi{高度}(\emphi{height})、\emphi{深度}(\emphi{depth})和\emphi{宽度}(\emphi{width})。 150 | 高度是参考点到盒子顶部的距离,深度是参考点到盒子底部的距离,宽度则是盒子的宽度。 151 | 而\emphi{整体高度}(\emphi{totalheight})定义为盒子底部到顶部的距离, 152 | 即:$\text{\emph{整体高度}} = \text{\emph{高度}} + \text{\emph{深度}}$。 153 | 154 | 未旋转图形的参考点是它的左下角(见图~\ref{fig:rotate-box} 左边的盒子),它的深度为零,高度就等于全部高度。 155 | 图~\ref{fig:rotate-box} 中间的盒子则是将图形旋转后,它的高度就不等于全部高度了。 156 | 右边的盒子则展示可将图形旋转使其高度为零。 157 | 158 | \begin{figure} 159 | \centering 160 | \includegraphics[width=.9\linewidth]{rotat-box} 161 | \caption{\LaTeX{}~盒子的旋转示例}\label{fig:rotate-box} 162 | \end{figure} 163 | 164 | \section{Encapsulated PostScript}\label{sec:eps} 165 | 166 | PostScript 语言能够用来描述图形和文本。 167 | 它既可在传统的PostScript (\file{ps})文件中来描述多页文档,也用于 Encapsulated PostScript (\file{eps})文件中来描述插入文档的图像。 168 | \file{ps} 文件和 \file{eps} 文件的主要区别在于: 169 | \begin{itemize} 170 | \item \file{eps} 文件只能使用部分特定的 PostScript 操作符。 171 | \item \file{eps} 文件必须含有一个 BoundingBox 行来确定 \file{eps} 图像的大小。 172 | \end{itemize} 173 | 174 | 175 | \subsection{禁止使用的 PostScript 操作符}\label{ssec:forbidps} 176 | 177 | 由于 \file{eps} 图形需要和其它对象一起共享页面, 178 | 所以 \file{eps} 文件中不能使用页面操作, 179 | 例如选择页面大小(\texttt{a4} 或 \texttt{letter})和清除整个页面(\texttt{erasepage})等命令。 180 | 下面是不能在 \file{eps} 文件中使用的 PostScript 操作符: 181 | 182 | \begin{center} 183 | \ttfamily 184 | \begin{tabular}{lllll} 185 | a3 & a4 & a5 & banddevice & clear \\ 186 | cleardictstack & copypage & erasepage & exitserver & framedevice \\ 187 | grestoreall & initclip & initgraphics & initmatrix & letter \\ 188 | legal & note & prenderbands & quit & renderbands \\ 189 | setdevice & setglobal & setpagedevice & setpageparams & setsccbatch \\ 190 | setshared & startjob & stop & & \\ 191 | \end{tabular} 192 | \end{center} 193 | 194 | 尽管下列 PostScript 操作符可以在 \file{eps} 文件中使用, 195 | 但是不适当地使用它们极易导致错误。 196 | \begin{center} 197 | \ttfamily 198 | \begin{tabular}{llll} 199 | nulldevice & setcolortransfer & setgstate & sethalftone \\ 200 | setmatrix & setscreen & settransfer & undefinedfont \\ 201 | \end{tabular} 202 | \end{center} 203 | 204 | 上面的一些操作符可能会使\file{dvi} 到 \file{ps} 的转换失败, 205 | 另一些则可能导致像图像位置错误、消失或者闪烁等奇怪的问题。 206 | 因为这些操作符绝大部分不会影响到PostScript的堆栈, 207 | 所以在大多数情况下,简单地将这些招致问题的操作符删除就可解决问题。 208 | 其它的情形则需要更为复杂的PostScipt编程知识。 209 | 210 | \subsection{EPS BoundingBox}\label{ssec:bbox} 211 | \index{EPS BoundingBox} 212 | 213 | 习惯上,PostScript 文件的第一行标明了该文件的PostScript类型, 214 | 接下来的几行是被称为 \emph{header} 或\emph{preamble} 的注释行(PostScript 的注释符也是 \texttt{\%})。 215 | 其中一行定义了 BoundingBox,包括四个整数值,分别代表: 216 | \begin{enumerate} 217 | \item BoundingBox 的左下角的 $x$ 坐标。 218 | \item BoundingBox 的左下角的 $y$ 坐标。 219 | \item BoundingBox 的右上角的 $x$ 坐标。 220 | \item BoundingBox 的右上角的 $y$ 坐标。 221 | \end{enumerate} 222 | 223 | 例如,一个由 \prgname{gnuplot} 程序生成的 \file{eps} 文件的前五行为 224 | 225 | \begin{lstlisting}[language=PostScript] 226 | %!PS-Adobe-2.0 EPSF-2.0 227 | %%Creator: gnuplot 228 | %%DocumentFonts: Times-Roman 229 | %%BoundingBox: 50 50 410 302 230 | %%EndComments 231 | \end{lstlisting} 232 | 233 | 这个\prgname{gnuplot} 生成的 \file{eps} 图像的左下角的坐标是 $(50,50)$, 234 | 右上角的坐标是 $(410,302)$。 235 | 这里坐标的单位是PostScript 点,一点等于 $\nicefrac{1}{72}$ 英寸。 236 | 这样上面的这幅图的自然宽度为 $5$ 英寸,相应的自然高度为 $3.5$ 英寸。 237 | 需要注意的是PostScript 点要比 \TeX{} 点(等于 $\nicefrac{1}{72.27}$ 英寸)稍大。 238 | 在 \TeX{} 和 \LaTeX{} 中,PostScript 点被称为“大点”(``big points'')或简称 \texttt{bp}, 239 | 而 \TeX{} 点被称为``points''或简称 \texttt{pt}。 240 | 241 | \subsection{将PS转换为EPS}\label{ssec:pstoeps} 242 | 243 | 单页的PostScript文件,如果没有包含不适当的命令的话, 244 | 可用下述方法之一加上BoundingBox行并转为\file{eps}文件。 245 | \textbf{由于这些方法都不检查非法的PostScript操作符, 246 | 所以只有在被转换的PostScript文件本身不含有那些被禁制使用的操作符的情况下,才能得到正确的\file{eps} 文件。} 247 | 248 | \begin{enumerate} 249 | \item 最方便的是用GhostScript里带的\prgname{ps2epsi}工具(见第~\ref{ssec:gs} 节,\pageref{ssec:gs} 页)。 250 | 它可以读入PostScript文件,计算 BoundingBox 的参数, 251 | 然后生成一个含有PostScript 图像的\file{eps} 文件。 252 | 253 | 最终得到的 \file{eps} 文件是 \file{epsi} 格式, 254 | 即它在文件的开始部分带有一个低分辨率的Interchange预览位图。 255 | 因为这个预览位图是 \ascii 编码的, 256 | 所以不会造成像第 \ref{ssec:linebuffer} 节的 \texttt{bufsize} 错误。 257 | 不过,\file{epsi} 预览会增加文件体积。\index{bufsize@\texttt{bufsize}} 258 | \item 另外一种通过 Ghostscript 计算 BoundingBox 参数的方法是使用 \prgname{epstool} 工具。 259 | 该程序适用于Unix、DOS、Windows和OS/2系统,获取链接为 260 | \begin{center} 261 | \url{http://www.cs.wisc.edu/~ghost/gsview/epstool.htm} 262 | \end{center} 263 | 例如,如下命令 264 | \begin{verbatim} 265 | epstool --copy --bbox file1.eps file2.eps 266 | \end{verbatim} 267 | 分析 \file{file1.eps} 的内容来决定正确的 BoundingBox, 268 | 然后将带有计算后的BoundingBox值的 \file{file1.eps} 内容复制给 \file{file2.eps}。 269 | \prgname{epstool} 工具还可以用于在 \file{eps} 文件内添加 \file{tiff}、\file{wmf} 以及 \file{epsi} 预览位图, 270 | 或者用于从 \file{eps} 文件中提取预览位图。 271 | 272 | \item 此外,还有一种办法是,计算 BoundingBox 的参数, 273 | 然后把它加到PostScript文件中或作为插图命令的参数 274 | (比如用 \cmd{includegraphics} 的 \texttt{bb} 选项)。 275 | 计算BoundingBox 参数的方法有以下几种: 276 | \begin{enumerate} 277 | \item 用 Ghostview 或 GSview 将 PostScript 图形打开。 278 | 当鼠标在图形上移动时就会显示相应的坐标(以页面的左下角为参照点)。 279 | 记下图形的左下角和右上角的坐标就可确定它的 BoundingBox。 280 | \item 将 PostScript 图形打印一份, 281 | 测量页面的左下角到图像的左下角的水平和竖直距离(以英寸为单位), 282 | 然后乘以 $72$ 就可以得到 BoundingBox 的左下角坐标。 283 | 类似地,测量页面左下角到图像右上角的水平和竖直距离就可以得到 BoundingBox 的右上角坐标。 284 | \item \pkg{bbfig} 脚本使用 PostScript 打印机来计算 BoundingBox。 285 | \pkg{bbfig} 会在PostScript文件开头添加一些 PostScript 命令并送往PostScript打印机。 286 | 在打印机处,添加的PostScript命令会计算 BoundingBox坐标, 287 | 然后将结果打印在PostScript图像上面。 288 | \pkg{bbfig} 脚本程序的地址为 289 | \begin{center} 290 | \href{ftp://ctan.tug.org/tex-archive/support/bbfig/}{CTAN/support/bbfig/} 291 | \end{center} 292 | \end{enumerate} 293 | \end{enumerate} 294 | 295 | \subsection{修正非标准的EPS文件}\label{ssec:fixeps} 296 | 一些应用程序(例如 \prgname{Mathematica} 和 \prgname{FrameMaker} )会生成非标准的 \file{eps} 文件, 297 | 不能在\LaTeX\ 等其它程序上使用。 298 | 有一些应用程序会根据它们自己的偏好给 PostScript 加入了额外特性, 299 | 还有一些应用程序生成非常糟糕的 PostScript 代码。 300 | 通常来说,这些非标准的PostScript可以由软件公司自己或者精通PostScript的用户提供的脚本来修正。 301 | 检索软件供应商的网页或者搜索相关软件的网络新闻组来获取相关信息。 302 | 303 | \section{\LaTeX{} 怎样使用 EPS 图}\label{sec:useeps} 304 | 305 | 当处理\prgname{dvips} 类型文件时,\LaTeX{} 和 \file{dvi} 到 \file{ps} 的转换程序都会使用 \file{eps} 文件。 306 | \begin{enumerate} 307 | \item \LaTeX{} 通过读取 \file{eps} 文件中的BoundingBox行来决定为 \file{eps} 图形保留多大的空间。 308 | \item \file{dvi} 到\file{ps}的转换程序读取\file{eps}文件并把它插入到生成的\file{ps} 文件中。 309 | \end{enumerate} 310 | 311 | 需要说明的几种情形: 312 | \begin{itemize} 313 | \item 如果在插图命令中给定了BoundingBox的值 314 | (例如,使用了 \cmd{includegraphics} 的 \opt{bb} 选项), 315 | \LaTeX{} 将不会再读取 \file{eps} 文件。 316 | 事实上,当运行 \LaTeX{} 时,\file{eps} 文件甚至都不必存在。 317 | \item 由于 \TeX{} 不能读取非 \ascii 文件,也不能生成其它的程序, 318 | 所以 \LaTeX{} 不能从压缩的 \file{eps} 文件或其它非 \file{eps} 图像文件中得到BoundingBox的信息。 319 | 在这种情况下,BoundingBox参数值必须由插图命令给定(例如 \cmd{includegraphics} 命令的 \opt{bb} 选项) 320 | 或者存放在一个未压缩的文本文件中(见第~\ref{sec:dvips-noneps} 节,\pageref{sec:dvips-noneps} 页)。 321 | \item \file{eps} 图像并没有包含在\file{dvi}文件中。 322 | 当 \file{dvi} 转换为 \file{ps} 时,\file{eps} 文件必须存在。 323 | 因此,所有用到的\file{eps}文件必须和 \file{dvi} 文件放在一起。 324 | \item 一些 \file{dvi} 浏览器可能不支持显示 \file{eps} 图像。 325 | 这时,为了方便使用者对图像进行定位,一般会将图形的BoundingBox用一个方框显示出来。 326 | \end{itemize} 327 | 328 | \subsection{行缓冲区溢出}\label{ssec:linebuffer} 329 | 330 | \TeX{} 在读取 \ascii 文件时是每次从中读取一行,然后把它放到自己的行缓冲区里。 331 | \TeX{} 的行缓冲区大约有3000个字符长度。 332 | 如果 \file{eps} 文件中有一行的长度超过了行缓冲区的长度,就会产生如下的错误讯息: 333 | 334 | \begin{Verbatim}[xleftmargin=22pt] 335 | Unable to read an entire line--bufsize=3000. 336 | Please ask a wizard to enlarge me. 337 | \end{Verbatim} 338 | 339 | 因为\file{eps}很少有一行长度超过3000个字符的情形, 340 | 所以产生行缓冲区溢出错误的原因可能有两种: 341 | 342 | \begin{enumerate} 343 | \item \textbf{ EPS 文件中有一个长的二进制预览图} 344 | 345 | 有些应用程序生成的\file{eps} 文件在开始部分放置了一个二进制的预览图, 346 | 这样就可使得像\file{dvi} 浏览器等一些不能解释PostScript的软件也可来显示 \file{eps} 图形。 347 | 目前有少数与\TeX{} 有关的软件使用这种方法。 348 | 349 | 如果这个二进制预览图比行缓冲区小,\cmd{includegraphics} 将会略过它\footnote{ 350 | 注意,\cmd{psfig} 和其它一些过时的图像命令则不会忽略二进制预览。}。 351 | 但是,如果这个二进制的预览图比行缓冲区大的话,就会发生行缓冲区溢出的错误。 352 | 对于该问题有两种解决办法: 353 | 354 | \begin{enumerate} 355 | \item 如果不需要预览图,可以用文本编辑器将它删掉或在一开始用应用程序生成\file{eps} 图像时就选择不要预览图。 356 | \item 因为 \LaTeX{} 读取 \file{eps} 文件的唯一目的就是取得BoundingBox参数值大小, 357 | 因此,如果插图命令中给出BoundingBox的值(如在 \cmd{includegraphics} 中使用 \opt{bb} 选项), 358 | 那么\LaTeX{} 就不会读取 \file{eps} 文件。 359 | \end{enumerate} 360 | 361 | \item \textbf{\file{eps} 文件中的分行符在不适当的传输中被损坏} 362 | 363 | \emph{这里所谈到的问题不会在大部分最近的\TeX{} 发行版本中出现, 364 | 因为这些软件中的\TeX{} 程序都会正确的识别所有的分行符。} 365 | 366 | 不同的操作系统平台使用不同分行符。 367 | Unix 使用换行符LF(\verb+^J+), 368 | Macintosh 使用回车符CR( \verb+^M+), 369 | 而 DOS/Windows 则使用回车符加换行符( \verb+^M^J+)。 370 | 比如一个\file{eps} 文件从 Macintosh机上用二进制方式传输到Unix机上, 371 | 那么Unix机上的\TeX{} 会因找不到分行符 \verb+^J+ 而把整个文件作为一行,导致行缓冲区溢出的错误。 372 | 373 | 如果\file{eps} 文件中不含有二进制的部分(如预览图和嵌入的图形), 374 | 以文本方式传输就可以解决这一问题。 375 | 然而,带有二进制部分的 \file{eps} 文件必须用二进制方式传输, 376 | 否则文本方式传输会损坏二进制部分。 377 | 由于二进制传输方式不会翻译分行符,这时就需要在插图命令中给出BoundingBox的值来解决 378 | (例如 \cmd{includegraphics} 命令的 \opt{bb} 选项)。 379 | \end{enumerate} 380 | 381 | \section{PDF 图像}\label{sec:pdfgraphics} 382 | 正如之前提到的,\pdfTeX{} 可以直接导入 \file{pdf}、\file{png}、\file{jpeg} 和 \MetaPost{} 图像格式。 383 | 这一节将简要介绍这些格式。 384 | 相关的\pdfTeX{} 插图命令将在第~\ref{sec:graphicsinclusion} 节(\pageref{sec:graphicsinclusion} 页)中介绍。 385 | 386 | \subsection{JPEG}\label{ssec:jpeg} 387 | \file{jpeg} 是由联合图像专家组(Joint Photographic Experts Group , JPEG)委员会 388 | \begin{center} 389 | \url{http://www.jpeg.org/} 390 | \end{center} 391 | 授权的压缩标准。 392 | \file{jpeg} 格式是一种位图的压缩标准,它采用了有损压缩格式\footnote{ 393 | 有损压缩意味着压缩过程中损失了数据。 394 | 也就是说,解压缩一个有损压缩过的位图不会得到原始图片。 395 | 反之,无损压缩过程中不会有数据损失, 396 | 所以解压一个无损压缩过的位图会生成原始图片。}。 397 | 特别地,压缩过程不会保持线条和锋锐的边缘。 398 | 所以不太适用于线条描绘和带有锋锐元素的图片。 399 | 400 | \subsection{PNG}\label{ssec:png} 401 | 过去很多年 \file{gif} 一直是图标和其它线条画的位图压缩标准, 402 | 这是由于它采用的无损LZW压缩不会使得锋锐的边缘失真。 403 | 由于Unisys公司对于其LZW专利的强制执行,加上\file{gif} 的一些技术局限(例如256色的限制), 404 | 这些因素促使了一个小组开发可移植网络图形( Portable Network Graphics , PNG )格式。 405 | 该小组后来称为 \file{png} 开发组 406 | \begin{center} 407 | \url{http://www.libpng.org/pub/png/} 408 | \end{center} 409 | 与 GIF 一样,PNG也采用无损压缩,因此适合于线条画。 410 | 尽管 \file{png} 可以用于任何位图文件, 411 | 不过对于摄影照片和其它一些没有锋锐边缘的位图来说, 412 | \file{jpeg} 有损压缩通常效果更好( “更好”指的是生成更小的文件体积,同时对于人眼观察没有失真)。 413 | 414 | \subsection{PDF}\label{ssec:pdf} 415 | \href{http://www.adobe.com}{Adobe} 的便携式文档格式( Portable Document Format, \file{pdf} )与它的Adobe成员 PostScript 有很多相似之处。 416 | 与PostScript一样,\file{pdf} 可以包含文本、矢量图和位图。 417 | 一个 \file{pdf} 文件可以包含整个文档,也可以仅仅包含一个图形(类似于 \file{eps} )。 418 | 419 | \file{pdf} 不仅仅是 \pdfTeX{} 的主要输出格式,也是 \pdfTeX{} 插图的最普遍方法。 420 | 许多图像程序允许它们的图像直接保存为 \file{pdf} 格式。 421 | 没有直接 \file{pdf} 输出的程序可以转而输出 \file{eps} 矢量图, 422 | 后者通过 \prgname{epstopdf} 转换程序可以很容易地转成 \file{pdf} 矢量图。 423 | \prgname{epstopdf} 可以从 \textsc{ctan} 获得, 424 | 在Windows系统下是一个可执行程序,在Unix/Linux 以及 MaxOSX 等其它系统上则是一个\prgname{perl} 脚本 425 | \begin{center} 426 | \href{ftp://ctan.tug.org/tex-archive/support/epstopdf/}{CTAN/support/epstopdf/} 427 | \end{center} 428 | 429 | \subsection{\MetaPost}\label{ssec:metapost} 430 | \MetaPost{} 是由John Hobby编写的绘图语言。 431 | 它基于高德纳的 \MetaFont ,但增加了PostScript输出的功能。 432 | 关于 \MetaPost{} 的信息可以从以下网址获得: 433 | \begin{center} 434 | \url{http://www.tug.org/metapost.html} 435 | \end{center} 436 | 相关文档可参考~\cite{metapost-doc}。 437 | 438 | \MetaPost 可以用于 \prgname{dvips} 类型的 \LaTeX{} 文档, 439 | 也可以直接用于 \pdfLaTeX{} 文档\footnote{ 440 | \pdfLaTeX{} 实际上使用Hans Hagen开发的 {Con\TeX t} 代码将 \MetaPost{} 图像实时转成 \file{pdf}, 441 | 不过在用户层面上是很简明的。}。 442 | 443 | 下面的步骤使用 \MetaPost( \prgname{mpost} )所带的 \prgname{pstoedit} 工具将名为 \file{graphic.eps} 的 \file{eps} 文件转为名为 \file{graphic.mps} 的 \MetaPost{} 文件: 444 | 445 | \begin{verbatim} 446 | pstoedit -f mpost graphic.eps graphic.mp 447 | mpost graphic.mp 448 | rename graphic.1 graphic.mps 449 | \end{verbatim} 450 | 451 | \subsection{PurifyEPS}\label{ssec:purifyeps} 452 | Scott Pakin 的 \prgname{purifyeps} 工具能够将很多(但不是全部) \file{eps} 转成“净化版本”, 453 | 从而可以直接被 \LaTeX{} 和 \pdfLaTeX{} 读取。 454 | 为了运行 \prgname{purifyeps} 你需要下列工具: 455 | \begin{description} 456 | \item[PurifyEPS] 可以从\href{ftp://ctan.tug.org/tex-archive/support/purifyeps/}{CTAN/support/purifyeps/} 获得。 457 | \item[Perl] 可以从 \url{http://www.cpan.org} 获得。 458 | \item[pstoedit] 可以从 \url{http://www.pstoedit.net/pstoedit} 获得。 459 | \item[mpost] 来自于任何包含 \MetaPost{} 的\LaTeX{} 发行版本。 460 | \end{description} 461 | 462 | 463 | \section{图像软件}\label{sec:graphicsoftware} 464 | [{\bfseries 本节介绍的部分软件可能已经过时,仅供参考。——译注}] 465 | \subsection{Ghostscript}\label{ssec:gs} 466 | Ghostscript 是一个 PostScript/\file{pdf} 解释器, 467 | 它可以运行在大多数操作系统平台上,并且是自由发布的\footnote{ 468 | 尽管 AFPL Ghostscript (之前叫做 Aladdin Ghostscript )是免费发布的, 469 | 但却不是公有领域。 470 | 它受版权保护,有一些限制,例如不允许商业发布等。 471 | 当 Aladdin Ghostscript 的版本停止了大约一年之后, 472 | Aladdin 将其以“GNU Ghostscript”发布,使用的是限制性不那么强的 GNU Public License。}。 473 | 通过 Ghostscript,PostScript、\file{eps} 和 \file{pdf} 文件可以在屏幕显示, 474 | 也可以用 Postscript 和 非 PostScript 打印机来打印。 475 | AFPL Ghostscript 可以从 Ghostscript 官网获得: 476 | \begin{center} 477 | \url{http://ghostscript.com/} 478 | \end{center} 479 | 其中包含了预编译的Windows、DOS、OS/2 和 Macintosh 可执行文件, 480 | 以及在 Unix/VMS 下可用的源代码。 481 | 此外还有一些Ghostscript的图形界面软件,例如GSview、Ghostview、GV等, 482 | 可以更方便地浏览 PostScript。 483 | 484 | Ghostscript中还带有一些有用的工具,如 \prgname{ps2pdf} 等,可利用Ghostscript来 485 | 转换图形,打印、预览 PostScript文件。 486 | 详细的使用说明可参考Ghostscript所带的使用说明文件。 487 | 488 | \subsection{图像格式转换工具}\label{ssec:convertor} 489 | 490 | 下面列出的一些免费软件和共享软件可以用来转换图像格式。 491 | 在 \prgname{dvips} 模式文件中,这些程序可以将非\file{eps} 图像转成 \file{eps}。 492 | 在 \pdfLaTeX{} 文档中,这些程序可以将图像转成可以支持的格式( \file{pdf}、\file{png}、\file{jpeg} )。 493 | 其中一些程序还提供命令行方式,这样就可以实时转换图像, 494 | 具体见第~\pageref{ssec:noneps} 页的~\ref{ssec:noneps} 节 495 | 496 | \begin{description} 497 | \item[ImageMagick] 498 | 499 | \prgname{ImageMagick} 是一个开放源代码的自由软件, 500 | 适用于创建、编辑和合并位图图片。 501 | 它可以读取、转换和写入各种格式的图片。 502 | 可以进行的操作包括:剪裁图片,修改颜色或是应用各种效果,旋转和合并图片, 503 | 添加、拉伸和旋转文字、线条、多边形、椭圆和贝塞尔曲线。 504 | 505 | 例如,当 \prgname{ImageMagick} 的 \prgname{convert} 命令添加到系统的环境变量后, 506 | 如下命令会将 \file{file.jpg} 存为 \file{eps} 版本。 507 | \begin{verbatim} 508 | convert file.jpg file.eps 509 | \end{verbatim} 510 | 511 | 使用通配符可以批量转换文件,例如 512 | \begin{verbatim} 513 | convert *.gif image.png 514 | \end{verbatim} 515 | 会将当前路径下的所有 \file{gif} 文件转为 \file{png} 版本,并保存为 516 | \begin{verbatim} 517 | images-0.png 518 | images-1.png 519 | ... 520 | \end{verbatim} 521 | 想要将 \file{png} 文件名保存成原始的 \file{gif} 文件名则比较复杂, 522 | 需要写一个 shell 脚本或者 Windows 批处理文件。 523 | 524 | \prgname{ImageMagick} 可以运行在所有主流的操作系统上。 525 | 可执行程序和相关信息可以从下面的网址下载 526 | \begin{center} 527 | \url{http://www.imagemagick.org/} 528 | \end{center} 529 | 530 | \item[GraphicsMagick] 531 | \prgname{ImageMagick} 的接口不时发生变化, 532 | 这会导致调用 \prgname{ImageMagick} 的代码发生不兼容性。 533 | 作为 \prgname{ImageMagick} 5.2.2 的一个分支, 534 | \prgname{GraphisMagick} 项目于2002年11月开始开发, 535 | 旨在提供一套具有稳定接口的图像转换工具, 536 | 它的侧重点在于修复bugs而不是添加新特性。 537 | 538 | \prgname{GraphicsMagick} 可以在 Unix/Linux、Cygwin、MacOSX和Windows系统上运行。 539 | 可执行程序和源代码可以从如下网址下载 540 | \begin{center} 541 | \url{http://www.graphicsmagick.org/} 542 | \end{center} 543 | 544 | \item[NetPBM] 545 | \prgname{NetPBM} 是现在已经不维护的 \prgname{PBMPLUS} 程序包的自由开源版本。 546 | \prgname{NetPBM} 是一个关于图像操作的工具箱, 547 | 包括在各种类型的格式之间相互转换。 548 | 该程序包内有超过220种不同的工具,可以在约100种图像格式之间转换。 549 | \prgname{NetPBM} 使用命令行操作,没有图形界面。 550 | 551 | 大部分的Linux发行版和Cygwin项目都包含 \prgname{NetPBM}。 552 | Windows、MacOSX和其他操作系统上的 \prgname{NetPBM} 程序可以从下面的网址下载 553 | \begin{center} 554 | \url{http://netpbm.sourceforge.net/} 555 | \end{center} 556 | 557 | \item[Irfanview] 558 | 559 | \prgname{Irfanview} 是Windows上一款出色的图像软件, 560 | 具有易于安装、简洁、快速等特点。 561 | \prgname{Irfanview} 支持各种文件格式的浏览和转换, 562 | 并提供基本的图片编辑功能,包括裁剪、重采样、颜色和亮度的调整等。 563 | \prgname{Irfanview} 同时支持GUI图形界面和命令行操作,包括批处理模式。 564 | 565 | 例如,当\prgname{Irfanview} 的可执行程序 \verb|i_view32.exe| 添加到Windows的环境变量后, 566 | 如下命令 567 | \begin{verbatim} 568 | i_view32 *.gif /convert=*.png 569 | \end{verbatim} 570 | 会为当前目录下所有的 \file{gif} 文件创建 \file{png} 版本, 571 | 保存的文件名为原 \file{gif} 文件的文件名加上 \file{.png} 后缀。 572 | \prgname{Irfanview} 可以从下面的网址下载 573 | \begin{center} 574 | \url{http://www.irfanview.com/} 575 | \end{center} 576 | \prgname{Irfanview} 对于个人、学术和非盈利用户是免费的, 577 | 商业用户则要求注册费。 578 | 579 | \item[Graphic Converter] 580 | 581 | Graphic Converter 是一个Macintosh上的共享软件, 582 | 可以读取约190种图片格式,并输出约75种格式。 583 | 更多信息可见 584 | \begin{center} 585 | \url{http://www.lemkesoft.de/} 586 | \end{center} 587 | 588 | \item[WMF2EPS] 589 | 590 | \prgname{WMF2EPS} 是运行在Windows上的共享软件, 591 | 实现可以 \file{wmf} 到 \file{eps} 的转换。 592 | 获取网址为 593 | \begin{center} 594 | \href{http://www.ctan.org/tex-archive/support/wmf2eps}{CTAN/support/wmf2eps/} 595 | \end{center} 596 | 597 | \item[KVEC] 598 | 599 | \prgname{KVEC} 是一款自由软件, 600 | 能将 \file{bmp}、\file{gif}、\file{tiff} 等位图格式转化为 PostScript和其它的矢量图格式。 601 | \prgname{KVEC} 可以运行在 Windows、OS/2、Linux、Unix、Macintosh和BeOS等系统上。 602 | 更多信息可见 603 | \begin{center} 604 | \url{http://www.kvec.de} 605 | \end{center} 606 | 607 | \item[xv] 608 | 609 | \prgname{xv} 是一个交互式图片操作程序,运行在 X Window 系统下。 610 | 尽管有图像转换的功能,但是 \prgname{xv} 的设计目标是图片操作程序, 611 | 因此不适用于图像转换。 612 | 例如,它没有提供命令行功能,所以图像转换必须一个一个做。 613 | 614 | \prgname{xv} 对于非商业使用是共享软件,对于商业使用则要求注册。 615 | 更多信息可见 616 | \begin{center} 617 | \url{http://www.trilon.com/xv/xv.html} 618 | \end{center} 619 | 620 | \item[GIMP] 621 | 622 | \prgname{GIMP},即 GNU Image Manipulation Program,是一个图片操作的自由软件。 623 | 它基本上提供了 \prgname{PhotoShop} 的功能。 624 | \prgname{GIMP} 可以运行在 Unix/Linux、Windows和MacOS上。 625 | 更多信息可见 626 | \begin{center} 627 | \url{http://www.gimp.org/} 628 | \end{center} 629 | 630 | \end{description} 631 | 632 | 633 | \subsection{Level 2 EPS 封装}\label{ssec:epswrapper} 634 | Level 2 PostScript 支持若干种压缩格式, 635 | 包括用于 \file{jpeg} 文件的 DCT 和用于许多 \file{tiff} 文件的 LZW。 636 | 此外,二进制数据可以是 \ascii 编码的, 637 | 比如 \ascii85 或者 \ascii Hex,这样生成的\ascii 文件大小分别是原来二进制文件的$125\percent$ 和 $200\percent$。 638 | 由于Level-2 \file{eps}支持这些压缩格式, 639 | 因此可以创建为 \file{jpeg} 或是 \file{tiff} 文件的封装。 640 | 这样生成的 \file{eps} 比起传统的\file{eps}转换来说具有更高的质量和更小的体积。 641 | 如果你有一台 Level 2 PostScript打印机, 642 | 那么你最好是用下面的这些封装程序来替代上节中的那些转换软件。 643 | 不过由于这样得到的PostScript文件只能在 Level 2 PostScript打印机上打印,会降低文件的通用性。 644 | 645 | 请注意,默认情况下,\prgname{dvips} 会剥离使用的 \file{eps} 图像的注释行 646 | (即以 \texttt{\%\%} 开头的行)。 647 | 由于\ascii85编码的 Level 2 图像会包含以 \texttt{\%\%} 开头的行, 648 | 所以,使用 \ascii85编码的 level-2 \file{eps} 文件的用户必须使用\verb|dvips -K0| 选项(\texttt{K} 加上数字 \texttt{0} ), 649 | 以阻止 \prgname{dvips} 剥离注释行。 650 | 不过,\ascii Hex 编码的 level-2 文件则不会有这个问题。 651 | 652 | \begin{description} 653 | \item[jpeg2ps] 654 | 655 | \prgname{jpeg2ps} 是一个用 C 语言编写的程序, 656 | 可将\file{jpeg} 图像转换为 Level 2 PostScript。 657 | \prgname{jpeg2ps} 可在 Unix、DOS 和其它操作系统下使用。 658 | \prgname{jpeg2ps} 可以从如下网址获得 659 | \begin{center} 660 | \href{http://www.ctan.org/tex-archive/support/jpeg2ps}{CTAN/support/jpeg2ps/}\\ 661 | \url{http://gnuwin32.sourceforge.net/packages/jpeg2ps.htm} 662 | \end{center} 663 | 664 | \prgname{jpeg2ps} 支持三种 level-2 编码: 665 | \ascii85 (默认值)、8-bit binary (使用 \verb|jpeg2ps -b| 选项)、7-bit \ascii Hex (使用 \verb|jpeg2ps -h| 选项)。 666 | 667 | \item[tiff2ps] 668 | 669 | \prgname{tiff2ps} 可以运行在 Unix、DOS、Mac 和 VMS 系统上。 670 | \file{tiff} 图像可用\prgname{tiff2ps} 程序转换为 LZW--编码的 Level 2 PostScript。 671 | \texttt{tiff2ps} 的源代码可以从如下站点获得 672 | \begin{center} 673 | \url{http://www-mipl.jpl.nasa.gov/~ndr/tiff/html/tools.html}\\ 674 | \url{ftp://ftp.sgi.com/graphics/tiff/} 675 | \end{center} 676 | 677 | \item[ImageMagick 的 level-2 EPS 功能] 678 | 679 | 正如第~\pageref{ssec:convertor} 页的~\ref{ssec:convertor} 节所述, 680 | \prgname{ImageMagick} 可以在一大类图像格式之间转换。 681 | 其中一种格式就是 level-2 \file{eps}, 682 | 因此,\prgname{ImageMagick} 具有和上述 level-2 封装相同的功能。 683 | 例如, 684 | \begin{verbatim} 685 | convert file.jpeg file.eps2 686 | \end{verbatim} 687 | 会为 \file{file.jpeg} 创建一个 level-2 \file{eps} 版本 \file{file.eps2} 688 | 689 | \end{description} 690 | 691 | \subsection{编辑 PostScript}\label{ssec:editps} 692 | 693 | 虽然可直接编辑 \file{eps} 文件中的PostScript命令来改变图像, 694 | 但这对大多数人来说还是很困难的。 695 | 所幸的是,借助于下面的一些工具软件,可以很容易地编辑 \file{eps} 图像。 696 | 697 | \begin{description} 698 | \item[pstoedit] 699 | 700 | \prgname{pstoedit} 是 Unix、Windows、DOS 和 OS/2 下的自由软件, 701 | 它能够将PostScript或PDF图像转为其它矢量格式 702 | (比如\file{Xfig} 的 \file{.fig}格式)。 703 | 更多信息可参考 704 | \begin{center} 705 | \url{http://www.pstoedit.com/} 706 | \end{center} 707 | 708 | \item[Mayura Draw] 709 | 710 | \prgname{Mayura Draw} 以前称为\prgname{PageDraw}, 711 | 是 Windows3.1/95/NT 下的共享软件。 712 | 当与ghostscript一起使用时,它可以编辑PostScript文件。见: 713 | \begin{center} 714 | \url{http://www.mayura.com/} 715 | \end{center} 716 | 717 | \item[xfig] 718 | 719 | \prgname{xfig} 是 Unix/Xwindows 下功能强大的自由绘图软件, 720 | 能够导入 \file{eps} 图形并加上标记。不过目前还不能改变原始的\file{eps} 图像。 721 | 参见 722 | \begin{center} 723 | \url{http://www.xfig.org/} 724 | \end{center} 725 | 726 | \end{description} 727 | 728 | \clearpage 729 | \endinput 730 | -------------------------------------------------------------------------------- /src/part2.tex: -------------------------------------------------------------------------------- 1 | %part2.tex 2 | \part{\LaTeX{}图形宏集}\label{part:graphicbundle} 3 | 4 | 这一部分简要介绍 \LaTeX{} 图形宏集。 5 | 更多细节可以参考图形宏集文档 \cite{grfguide} 或者 \emph{\LaTeX{} Graphics Companion}\cite{Goossens1997}。 6 | 7 | \section{图像文件加载}\label{sec:graphicsinclusion} 8 | 9 | 导入图像需要使用 \pkg{graphicx} 宏包的 \cmd{includegraphics} 命令,语法为 10 | \begin{lstlisting}[frame=shadowbox] 11 | \includegraphics[选项]{文件} 12 | \end{lstlisting} 13 | 这里\emph{选项} 在表~\ref{tab:opt}、\ref{tab:cropopt}、\ref{tab:boolopt} 中列出。 14 | 因为 \cmd{includegraphics} 不会结束当前段落,所以它能够在文本中放置图形如 15 | \includegraphics[width=12pt]{recycle} 和 \includegraphics[width=12pt]{illusion}。 16 | 17 | \subsection{图形驱动}\label{ssec:driver} 18 | 用户必须指定一个图形驱动以告诉图形宏包如何处理导入的图像。 19 | 目前\LaTeX{} 图形宏集支持18种不同的驱动 20 | \footnote{ 21 | 到目前(2016年)为止,支持的驱动数已经超过了20种。——译注}, 22 | 不过,本文档只涉及几种最常用的驱动: 23 | \prgname{dvips}、\prgname{dvipdfmx}、\prgname{pdftex}、\prgname{xetex}、\prgname{luatex}。 24 | 除了 \prgname{dvipdfmx} 之外,余下几种驱动一般不用显式指明, 25 | 因为绝大部分 \LaTeX{} 发行版中的 \file{graphics.cfg} 可以自动识别\footnote{ 26 | \file{graphics.cfg} 文件会检测文件的编译方式。 27 | 对于 \prgname{latex} 会指定 \opt{dvips} 选项, 28 | 对于 \prgname{pdflatex} 会指定 \opt{pdftex} 选项, 29 | 对于 \prgname{xelatex} 会指定 \opt{xetex} 选项, 30 | 对于 \prgname{lualatex} 会指定 \opt{luatex} 选项。 31 | 而对于 \prgname{latex}+\prgname{dvipdfmx} 编译方式,则需要手动声明 \opt{dvipdfmx} 选项, 32 | 因为经由 \prgname{latex} 生成 \file{dvi} 文件后, 33 | \file{graphics.cfg} 会假定接下来使用 \prgname{dvips}。}。 34 | 35 | 如果用户想要指定一个驱动,可以用以下三种方式 36 | \marginpar{指定驱动} 37 | \begin{enumerate} 38 | \item 默认值在 \file{graphics.cfg} 文件中指定。 39 | \item 任何通过 \cmd{documentclass} 的选项指定的驱动会覆盖由 \file{graphics.cfg} 文件指定的驱动。 40 | \item 任何由 \cmdM{usepackage}{graphics} 的选项指定的驱动会覆盖前两种方式指定的驱动。 41 | \end{enumerate} 42 | 43 | \subsection{DVIPS 模式下图像加载} 44 | \prgname{dvips} 模式下支持最好的图像格式是 \file{eps}。 45 | 当使用 \prgname{latex} 编译文件时,下面的命令 46 | \begin{lstlisting} 47 | \includegraphics{file.eps} 48 | \end{lstlisting} 49 | 会从 \file{file.eps} 文件中按照自然大小导入图像。 50 | 如果文件名没有扩展名, 51 | \begin{lstlisting} 52 | \includegraphics{file} 53 | \end{lstlisting} 54 | 那么 \cmd{includegraphics} 会按照 \cmd{DeclareGraphicsExtensions} 扩展名列表中自动加上扩展名 55 | (见~\pageref{ssec:deextension} 的第~\ref{ssec:deextension} 节)。 56 | 57 | \subsection[pdfLaTeX 模式下的图像加载]{\pdfLaTeX{} 模式下的图像加载} 58 | \pdfTeX{} 支持直接导入 \file{pdf}、\file{png}、\file{jpeg} 和 \MetaPost{} 图像。 59 | 当使用 \prgname{pdflatex} 编译时,下面的命令 60 | \begin{lstlisting} 61 | \includegraphics{file.pdf} 62 | \includegraphics{file.png} 63 | \includegraphics{file.jpg} 64 | \includegraphics{file.mps} 65 | \end{lstlisting} 66 | 会按照自然尺寸大小导入 \file{pdf} 文件 \file{file.pdf}、 67 | \file{png} 文件 \file{file.png}、 68 | \file{jpeg} 文件 \file{file.jpg} 69 | 以及 \MetaPost{} 文件 \file{file.mps}。 70 | 如果文件名没有扩展名 71 | \begin{lstlisting} 72 | \includegraphics{file} 73 | \end{lstlisting} 74 | 那么 \cmd{includegraphics} 会按照 \cmd{DeclareGraphicsExtensions} 扩展名列表中自动加上扩展名 75 | (见~\pageref{ssec:deextension} 的第~\ref{ssec:deextension} 节)。 76 | 77 | \subsection{同时供 \LaTeX{} 和 \pdfLaTeX{} 编译的文档 }\label{ssec:latexandpdflatex} 78 | 很多情况下要求文档同时可以由 \LaTeX{} 或 \pdfLaTeX{} 编译。 79 | 要求 PostScript 输出时使用 \LaTeX{} 编译和 \prgname{dvips} 驱动, 80 | 要求 \file{pdf} 输出时则使用 \pdfLaTeX{} 编译。 81 | 在这两种方式之间切换会改变两件事情。\footnote{ 82 | 使用 \prgname{xelatex} 或者 \prgname{lualatex} 编译时无需考虑此问题。 83 | 这是因为这两种编译方式能同时支持 \file{eps} 和 \file{pdf}、\file{jpg}、\file{png} 等图片格式, 84 | 同时编译时也能够自动调用相应的 \pkg{graphicx} 驱动选项。——译注} 85 | \begin{itemize} 86 | \item 合适的 \pkg{graphicx} 驱动会改变。 87 | \item 可以直接导入的图像类型会改变。 88 | \end{itemize} 89 | 使用如下步骤会调整这些,这样一份文档可以同时由 \LaTeX{} 和 \pdfLaTeX{} 编译。 90 | \begin{enumerate} 91 | \item 对于每一份要导入的图像都创建两个副本\footnote{ 92 | 有时使用 \prgname{PurifyEPS} (见 \pageref{ssec:purifyeps} 页的第~\ref{ssec:purifyeps} 节) 可以创建一个文件并可以同时供 \LaTeX{} 和 \pdfLaTeX{} 使用。}: 93 | \begin{enumerate} 94 | \item 一份 \file{eps} 版本,当使用 \prgname{latex} 编译时会导入。 95 | \item 一份 \file{png}、\file{pdf}、\file{jpeg} 或者 \MetaPost{} 版本, 96 | 当使用 \prgname{pdflatex} 编译时会导入\footnote{ 97 | 也可以使用 \prgname{epstopdf} 进行实时转换, 98 | 见下面的第~\ref{sssec:epstopdf} 节。——译注}。 99 | \end{enumerate} 100 | 101 | \item 不要在 \cmd{documentclass} 或者 \cmdM{usepackage}{graphicx} 命令中指定 \opt{dvips} 或者 \opt{pdftex} 选项。 102 | \file{graphic.cfg} 文件会自动传递合适的选项给 \pkg{graphicx} 宏包。 103 | 104 | \item 当使用 \cmd{includegraphics} 命令插图时, 105 | 不要指定扩展名。例如 106 | \begin{lstlisting} 107 | \includegraphics{graphic} 108 | \end{lstlisting} 109 | 定义在 \file{dvips.def} 中的默认扩展名列表会使得 \LaTeX{} 导入图像 \file{eps} 版本, 110 | 而定义在 \file{pdftex.def} 中的默认扩展名列表会使得 \pdfLaTeX{} 导入图像的 \file{png}、\file{pdf}、\file{jpeg} 或者 \MetaPost{} 版本 111 | (见~\pageref{ssec:deextension} 的第~\ref{ssec:deextension} 节)。 112 | 113 | \item 不要直接使用 \pkg{psfrag}。如果需要进行 \pkg{psfrag} 替换, 114 | 使用~\pageref{sssec:psfrag-pdftex} 页的第~\ref{sssec:psfrag-pdftex} 节介绍的方法。 115 | \end{enumerate} 116 | 117 | \subsubsection{使用 \pkg{ifpdf} 宏包的条件代码} 118 | \pkgi{ifpdf} 宏包的 \cmdi{ifpdf} 命令会检测文档是否由 \prgname{pdflatex} 编译\footnote{ 119 | 历史上,有一种检测方法是基于 \cmd{pdfoutput} 仅在使用 \pdfLaTeX{} 时才有定义这一事实。 120 | 然而,现在绝大部分 \TeX{} 发行版中的 \prgname{latex} 命令实际上是在 \file{dvi} 模式下执行 \pdfLaTeX{}。 121 | 此时无论用\prgname{latex} 和 \prgname{pdflatex} 中的哪种来编译,\cmd{pdfoutput} 都有定义。 122 | \pkg{ifpdf} 宏包则提供了一个鲁棒的条件命令,可以判断文档是否直接处理成 \file{pdf} 文件, 123 | 从而解决了这一问题。}, 124 | 进而可以在文档中使用条件语句。 125 | 126 | 例如,为了精简扩展名列表(见第~\ref{ssec:deextension} 节), 127 | 可以用 \cmd{ifpdf} 命令来定制 128 | \begin{lstlisting} 129 | \usepackage{ifpdf} 130 | ... 131 | \ifpdf 132 | \DeclareGraphicsExtensions{.pdf,.png,.jpg,.mps} 133 | \else 134 | \DeclareGraphicsExtensions{.eps} 135 | \fi 136 | \end{lstlisting} 137 | 138 | 如果用户想要基于条件代码来使用不同的 \cmd{documentclass} 选项, 139 | 使用如下代码可以在 \cmd{documentclass} 之前定义 \cmd{ifpdf} 140 | \begin{lstlisting} 141 | \RequirePackage{ifpdf} 142 | \ifpdf 143 | \documentclass[pdftex]{article} 144 | \else 145 | \documentclass[dvips]{article} 146 | \fi 147 | \end{lstlisting} 148 | 这段代码当使用 \prgname{pdflatex} 时会传递 \opt{pdftex} 选项, 149 | 而使用 \prgname{latex} 编译时会传递 \opt{dvips} 选项。 150 | 不过,正如~\pageref{ssec:driver} 页的第~\ref{ssec:driver} 节所述, 151 | 这段代码实际上没有必要,因为绝大部分的发行版本会根据 \file{graphics.cfg} 文件自动处理驱动选项。 152 | 153 | \subsubsection{使用 epstopdf 宏包}\label{sssec:epstopdf} 154 | 如果已经准备了 \file{eps} 图像而想使用 \prgname{pdflatex} 编译方式, 155 | 可以考虑使用宏包 \pkgi{epstopdf}。 156 | 该宏包可以在编译时实时地将 \file{eps} 转成 \file{pdf} 格式图像, 157 | 从而可以在 \prgname{pdflatex} 编译方式下使用。\footnote{ 158 | 在 \TeX Live (2010之后的较新版本)中会自动调用该宏包,也就是说,此时可以直接用 \prgname{pdflatex} 编译 \file{eps} 插图的情况——译注} 159 | 160 | 使用该宏包要注意两点: 161 | \begin{itemize} 162 | \item 需要开启 \cmd{write18} 特性,从而使得可以在编译时调用外部程序。 163 | 具体来说,编译方式为 164 | \begin{lstlisting}[language=bash,escapechar=\%] 165 | pdflatex -shell-escape test.tex %(\TeX Live 中)% 166 | pdflatex -enable-write18 test.tex %(MiK\TeX{} 中)% 167 | \end{lstlisting} 168 | \item 在图形宏包 \pkg{graphics}/\pkg{graphicx} 之后载入 \pkg{epstopdf},即 169 | \begin{lstlisting} 170 | \usepackage{graphicx} 171 | \usepackage{epstopdf} 172 | \end{lstlisting} 173 | \end{itemize} 174 | 175 | 结合之前介绍的 \pkg{ifpdf},可以使用如下代码 176 | \begin{lstlisting} 177 | \usepackage{graphicx} 178 | \usepackage{ifpdf} 179 | \ifpdf 180 | \usepackage{epstopdf} 181 | \fi 182 | \end{lstlisting} 183 | 这样,在只准备 \file{eps} 格式图像的情况下, 184 | \prgname{dvips} 和 \prgname{pdflatex} 都可以处理文档。 185 | 186 | \subsection{指定宽度、高度和角度}\label{ssec:spec-width-height-angle} 187 | 如下命令 188 | \marginpar{指定宽度} 189 | \begin{lstlisting} 190 | \includegraphics[width=3in]{file} 191 | \end{lstlisting} 192 | 导入指定的图片文件,且宽度为 3英寸\footnote{ 193 | 同时高度也会按相应的比例缩放——译注}。 194 | 不过,为了使图像的页面布局更具通用性, 195 | 图片宽度最好指定为可伸缩的相对长度而不是用像3英寸这样的固定尺寸\footnote{ 196 | 预先定义的相对长度包括:\\ 197 | \cmd{textwidth} 是文档中正文的宽度;\\ 198 | \cmd{linewidth} 是当前环境中一行的宽度;\\ 199 | \texttt{em} 是当前字体大写字母M的宽度;\\ 200 | \texttt{ex} 是当前字体小写字母x的高度。}。 201 | 例如, 202 | \begin{itemize} 203 | \item 如下命令将插入的图片伸缩至和当前一行文本的宽度相同: 204 | \begin{lstlisting} 205 | \includegraphics[width=\linewidth]{graphic} 206 | \end{lstlisting} 207 | \item 如下命令使得插入图片的宽度为当前一行文本的 $80\percent$: 208 | \begin{lstlisting} 209 | \includegraphics[width=0.80\linewidth]{graphic} 210 | \end{lstlisting} 211 | \item 当与 \pkg{calc} 宏包配合使用时, 212 | 如下命令可以使得插入图片的宽度比当前一行文本的宽度窄2英寸: 213 | \begin{lstlisting} 214 | \includegraphics[width=\linewidth-2.0in]{graphic} 215 | \end{lstlisting} 216 | 217 | \end{itemize} 218 | 219 | 类似地,如下命令 220 | \marginpar{指定高度} 221 | \begin{lstlisting} 222 | \includegraphics[height=2cm]{file} 223 | \end{lstlisting} 224 | 导入指定的图片文件,且使得高度为2厘米。 225 | 此外,\cmd{includegraphics} 命令还有一个 \opt{totalheight} 选项来指定整体高度 226 | (关于高度和整体高度的定义可参见第~\pageref{sec:terminology} 页的第~\ref{sec:terminology} 节)。 227 | 228 | \cmd{includegraphics} 命令的 \opt{angle} 选项可以指定插入图像的角度: 229 | \marginpar{指定角度} 230 | \begin{lstlisting} 231 | \includegraphics[angle=45]{graphic} 232 | \end{lstlisting} 233 | 该命令会按照原始尺寸插入图片,并且按逆时针旋转45度。 234 | 235 | \subsubsection{同时指定角度和高度/宽度} 236 | 由于 \cmd{includegraphics} 的选项是从左到右依次解释的, 237 | 所以其中指定角度和大小顺序会导致不同的效果。例如 238 | \begin{lstlisting} 239 | \begin{center} 240 | \includegraphics[angle=90,totalheight=1cm]{graphic} 241 | \includegraphics[totalheight=1cm,angle=90]{graphic} 242 | \end{center} 243 | \end{lstlisting} 244 | 会生成如下结果 245 | \begin{center} 246 | \resizebox*{!}{1cm}{\rotatebox{90}{\usebox{\boxgraphic}}} 247 | \rotatebox{90}{\resizebox*{!}{1cm}{\usebox{\boxgraphic}}} 248 | \end{center} 249 | 第一个盒子是先旋转了90度,然后缩放使得整体高度为1厘米。 250 | 第二个盒子先缩放使得整体高度为1厘米,然后再旋转90度。 251 | 另外要注意的是,以上图形中两幅图像之间有一个空格, 252 | 因为第一行 \cmd{includegraphics} 的末尾并没有以 \texttt{\%} 结束。 253 | 254 | \begin{table} 255 | \centering 256 | \caption{\cmd{includegraphics} 选项}\label{tab:opt} 257 | \begin{tabular}{>{\ttfamily}l p{0.7\textwidth}} 258 | \toprule 259 | height & 图形的高度,可用任何 \TeX{} 度量单位。 \\ \hline 260 | totalheight & 图形的整体高度,可用任何 \TeX{} 度量单位。 \\ \hline 261 | width & 图形的宽度,可为任何 \TeX{} 度量单位。 \\ \hline 262 | scale & 图形的缩放因子,设定 \opt{scale=2} 会使插入图形的大小为其自然大小的两倍。 \\ \hline 263 | angle & 设定旋转的角度,以度为单位,逆时针方向为正。 \\ \hline 264 | origin & \opt{origin} 指定图形绕那一点旋转,默认是围绕参考点旋转。 265 | \opt{origin} 点可以与第~\ref{ssec:rotatebox}节的 \cmd{rotatebox} 命令中的一样。 266 | 比如 \opt{origin=c} 将使图形绕它的中心旋转。 \\ \hline 267 | bb & 设定 BoundingBox 的值。 268 | 例如,\opt{bb=10 20 100 200} 会设定BoundingBox 的左下角在 $(10,20)$,右上角在 $(100,200)$。\par 269 | 因为 \cmd{includegraphics} 会自动从 \file{eps} 文件中读入BoundingBox值, 270 | 所以一般不用\opt{bb} 这个选项。 271 | 但它在 \file{eps} 文件中的 BoundingBox 丢失或不准确时还是很有用的。 \\ 272 | \bottomrule 273 | \end{tabular} 274 | \end{table} 275 | 276 | \begin{table} 277 | \centering 278 | \caption{\cmd{includegraphics} 裁剪选项}\label{tab:cropopt} 279 | \begin{tabular}{>{\ttfamily}l p{0.7\textwidth}} 280 | \toprule 281 | viewpoint & 指定图像可以被看到的部分。 282 | 如同 BoundingBox 一样,这个区域由四个数字决定,分别是左下角和右上角的坐标。 283 | 这里的坐标是以 BoundingBox 左下角为起点的相对坐标。 284 | 285 | 例如,如果图像的 BoundingBox 的值是 \texttt{50 50 410 302}, 286 | 那么 \texttt{viewpoint=50 50 122 122} 显示的图像是一平方英寸大小的正方形区域,且以图像左下角为左下角。 287 | 而 \texttt{viewpoint=338 230 410 302} 显示的图像也是一平方英寸大小的正方形区域,但以图形的右上角为右上角。 288 | 289 | 必须使用\opt{clip} 选项(见表~\ref{tab:boolopt})来阻止显示视图以外的部分。 \\ \hline 290 | trim & 显示部分图像的另一种方法。 291 | 所给出的四个数字分别代表了从左、下、右、上被截去的值。 292 | 正数代表从此方向截去的大小,而负数则代表从此方向加上的大小。 293 | 294 | 例如,\opt{trim=1 2 3 4} 代表图像的左边截去1 \texttt{bp}, 295 | 下边截去2 \texttt{bp},右边截去3 \texttt{bp},上边截去4 \texttt{bp}。 296 | 297 | 必须使用\opt{clip} 选项(见表~\ref{tab:boolopt})来阻止显示被截去的部分。 \\ \bottomrule 298 | \end{tabular} 299 | \end{table} 300 | 301 | \begin{table} 302 | \centering 303 | \caption{\cmd{includegraphics} 布尔型选项}\label{tab:boolopt} 304 | \begin{tabular}{>{\ttfamily}l p{0.7\textwidth} } 305 | \toprule 306 | clip & 指定 \opt{clip=false} 会显示整个的图形,即使有些部分在视图之外。(默认值) 307 | 308 | 指定 \opt{clip=true} 时将不显示图形在视图之外的部分。 \\ \hline 309 | draft & 使用\opt{draft} 或 \opt{draft=true} 选项将阻止图像的导入。 310 | 此时在插图的位置只显示图像的BoundingBox和文件名, 311 | 这会加快文档的显示和打印速度。 312 | 使用 \opt{draft=false} 则会显示图像。 313 | 314 | 如果使用 \opt{draft} 宏包选项 \cmdOM{usepackage}{draft}{graphicx}, 315 | 那么文档中的所有图像都以\opt{draft} 方式插入。 \\ \hline 316 | keepaspectratio & 在没有设定\opt{keepaspectratio} 选项时, 317 | 如果同时给定图像的宽度和高度/整体高度, 318 | 那么为了满足所设定的高和宽,图像的缩放可能会失真变形。 319 | 320 | 在设定\opt{keepaspectratio} 选项后,给定图像的宽度和高度/整体高度时, 321 | 图像会在保持原有的宽高比例下缩放,尽可能使得图像满足所设定的高和宽, 322 | 但是图像的实际宽高不会超出设置的值。 \\ \bottomrule 323 | \end{tabular} 324 | \end{table} 325 | 326 | 327 | \subsection{一些例子} 328 | 329 | 下面是一些使用 \cmd{includegraphics} 命令来插入图形的例子。\footnote{ 330 | 本小节来自于王磊在旧版本的中译本《\LaTeXe{} 插图指南》中额外补充的内容。——译注} 331 | 这里为方便起见,定义水平线 \cmd{HR} 为 332 | \begin{lstlisting} 333 | \newcommand{\HR}{\rule{1em}{0.4pt}} 334 | \end{lstlisting} 335 | 336 | \ifxetex\relax\else\ifpdf\relax\else %因为使用pdflatex不支持clip.所以省去。 337 | 在下面的几个例子中可以看到使用\opt{bb,clip,viewport} 和\opt{trim}的效果。 338 | 339 | \hspace{-1cm}\begin{minipage}[c]{.5\textwidth} 340 | 左\HR% 341 | \fbox{% 342 | \includegraphics[bb=120 120 150 200]{w.eps}}% 343 | \HR 右 344 | \qquad 345 | 左\HR% 346 | \fbox{% 347 | \includegraphics[bb=120 120 150 200,clip]{w.eps}}% 348 | \HR 右 349 | \end{minipage}% 350 | \begin{minipage}[c]{.5\textwidth} 351 | \begin{Verbatim}[frame=lines,label=\colorbox{green}{\small 例一},labelposition=topline,] 352 | 左\HR\fbox{% 353 | \includegraphics 354 | [bb=120 120 150 200]% 355 | {w.eps}}% 356 | \HR 右 357 | \qquad 358 | 左\HR\fbox{% 359 | \includegraphics 360 | [bb=120 120 150 200,clip]% 361 | {w.eps}}% 362 | \HR 右 363 | \end{Verbatim} 364 | \end{minipage} 365 | 366 | \hspace{-1.5cm}\begin{minipage}[c]{.65\textwidth} 367 | 左\HR\fbox{% 368 | \includegraphics[viewport=20 20 50 100,clip]{w}}% 369 | \HR 右 370 | \qquad 371 | 左\HR\fbox{% 372 | \includegraphics[trim=5 5 10 10,clip]{w}}% 373 | \HR 右 374 | \end{minipage}% 375 | \hspace{-1cm}\begin{minipage}[c]{.5\textwidth} 376 | \begin{Verbatim}[frame=lines,label=\colorbox{green}{\small 例二},labelposition=topline] 377 | 左\HR\fbox{% 378 | \includegraphics 379 | [viewport=20 20 50 100,clip]% 380 | {w.eps}}% 381 | \HR 右 382 | \qquad 383 | 左\HR\fbox{% 384 | \includegraphics 385 | [trim=5 5 10 10,clip]% 386 | {w.eps}} 387 | \HR 右 388 | \end{Verbatim} 389 | \par\vspace{0pt} 390 | \end{minipage} 391 | \fi\fi 392 | 393 | 以下几个例子中使用了 \opt{scale}、\opt{width}、\opt{height}、\opt{angle} 以及 \opt{keepaspectratio} 等选项及其不同的顺序,从而得到的不同效果。 394 | 395 | \begin{minipage}[t]{.45\textwidth} 396 | \vspace{0pt} 397 | 左\HR\fbox{% 398 | \scalebox{0.5}{\usebox{\boxw}}}\HR 右 399 | \end{minipage}% 400 | \hspace{-.5cm} 401 | \begin{minipage}[t]{.5\textwidth} 402 | \vspace{0pt} 403 | \begin{Verbatim}[frame=lines,label=\colorbox{green}{\small 例一},labelposition=topline,formatcom=\color{VerbatimColor}] 404 | 左\HR\fbox{% 405 | \includegraphics 406 | [scale=.5]{w.eps}% 407 | \HR 右 408 | \end{Verbatim} 409 | \end{minipage} 410 | 411 | \begin{minipage}[c]{.45\textwidth} 412 | 左\HR\fbox{% 413 | \resizebox{10mm}{!}{\usebox{\boxw}}}\HR 右 414 | \end{minipage}% 415 | \hspace{-.5cm} 416 | \begin{minipage}[c]{.5\textwidth} 417 | \begin{Verbatim}[frame=lines,label=\colorbox{green}{\small 例二},labelposition=topline,formatcom=\color{VerbatimColor}] 418 | 左\HR\fbox{% 419 | \includegraphics% 420 | [width=10mm]{w.eps}% 421 | \HR 右 422 | \end{Verbatim} 423 | \end{minipage} 424 | 425 | \begin{minipage}[c]{.45\textwidth} 426 | 左\HR\fbox{% 427 | \resizebox{20mm}{30mm}{\usebox{\boxw}}}\HR 右 428 | \end{minipage}% 429 | \hspace{-.5cm} 430 | \begin{minipage}[c]{.5\textwidth} 431 | \begin{Verbatim}[frame=lines,label=\colorbox{green}{\small 例三},labelposition=topline,formatcom=\color{VerbatimColor}] 432 | 左\HR\fbox{% 433 | \includegraphics 434 | [height=20mm,width=30mm]% 435 | {w.eps}}\HR 右 436 | \end{Verbatim} 437 | \end{minipage} 438 | 439 | \begin{minipage}[c]{.45\textwidth} 440 | 左\HR\fbox{% 441 | \includegraphics[height=20mm,width=30mm,% 442 | keepaspectratio]{w}}\HR 右 443 | \end{minipage}% 444 | \hspace{-.5cm} 445 | \begin{minipage}[c]{.5\textwidth} 446 | \begin{Verbatim}[frame=lines,label=\colorbox{green}{\small 例四},labelposition=topline,formatcom=\color{VerbatimColor}] 447 | 左\HR\fbox{% 448 | \includegraphics 449 | [height=20mm,width=30mm,% 450 | keepaspectratio]{w.eps}}% 451 | \HR 右 452 | \end{Verbatim} 453 | \end{minipage} 454 | 455 | \begin{minipage}[c]{.45\textwidth} 456 | 左\HR\fbox{% 457 | \rotatebox{-45}{\usebox{\boxw}}}\HR 右 458 | \end{minipage}% 459 | \hspace{-.5cm} 460 | \begin{minipage}[c]{.5\textwidth} 461 | \begin{Verbatim}[frame=lines,label=\colorbox{green}{\small 例五},labelposition=topline,formatcom=\color{VerbatimColor}] 462 | 左\HR\fbox{% 463 | \includegraphics 464 | [angle=-45]{w.eps}}% 465 | \HR 右 466 | \end{Verbatim} 467 | \end{minipage} 468 | 469 | \begin{minipage}[c]{.45\textwidth} 470 | 左\HR\fbox{% 471 | \resizebox{30mm}{!}{\rotatebox{-45}{\usebox{\boxw}}}}\HR 右 472 | \end{minipage}% 473 | \hspace{-.5cm} 474 | \begin{minipage}[c]{.5\textwidth} 475 | \begin{Verbatim}[frame=lines,label=\colorbox{green}{\small 例六},labelposition=topline,formatcom=\color{VerbatimColor}] 476 | 左\HR\fbox{% 477 | \includegraphics 478 | [angle=-45,width=30mm]% 479 | {w.eps}}\HR 右 480 | \end{Verbatim} 481 | \end{minipage} 482 | 483 | \hspace{-1cm} 484 | \begin{minipage}[c]{.45\textwidth} 485 | 左\HR\fbox{% 486 | \rotatebox{-45}{\resizebox{30mm}{!}{\usebox{\boxw}}}}\HR 右 487 | \end{minipage}% 488 | \begin{minipage}[c]{.5\textwidth} 489 | \begin{Verbatim}[frame=lines,label=\colorbox{green}{\small 例七},labelposition=topline,formatcom=\color{VerbatimColor}] 490 | 左\HR\fbox{% 491 | \includegraphics 492 | [width=30mm,angle=-45]% 493 | {w.eps}}\HR 右 494 | \end{Verbatim} 495 | \end{minipage} 496 | 497 | \begin{minipage}[c]{.45\textwidth} 498 | 左\HR\fbox{% 499 | \resizebox*{!}{15mm}{\rotatebox{-60}{\usebox{\boxw}}}}% 500 | \HR 右 501 | \end{minipage}% 502 | \hspace{-.5cm} 503 | \begin{minipage}[c]{.5\textwidth} 504 | \begin{Verbatim}[frame=lines,label=\colorbox{green}{\small 例八},labelposition=topline,formatcom=\color{VerbatimColor}] 505 | 左\HR\fbox{% 506 | \includegraphics 507 | [angle=-60,totalheight=15mm]% 508 | {w.eps}}% 509 | \HR 右 510 | \end{Verbatim} 511 | \end{minipage} 512 | 513 | \begin{minipage}[c]{.45\textwidth} 514 | 左\HR\fbox{% 515 | \resizebox*{30mm}{20mm}{\rotatebox{-60}{\usebox{\boxw}}}}% 516 | \HR 右 517 | \end{minipage}% 518 | \hspace{-.5cm} 519 | \begin{minipage}[c]{.5\textwidth} 520 | \begin{Verbatim}[frame=lines,label=\colorbox{green}{\small 例九},labelposition=topline,formatcom=\color{VerbatimColor}] 521 | 左\HR\fbox{% 522 | \includegraphics 523 | [angle=-60,totalheight=20mm,% 524 | width=30mm]{w.eps}}% 525 | \HR 右 526 | \end{Verbatim} 527 | \end{minipage} 528 | 529 | \begin{minipage}[c]{.45\textwidth} 530 | 左\HR\fbox{% 531 | \includegraphics[angle=-60,totalheight=20mm,width=30mm,keepaspectratio]{w}}% 532 | \HR 右 533 | \end{minipage}% 534 | \hspace{-.5cm} 535 | \begin{minipage}[c]{.5\textwidth} 536 | \begin{Verbatim}[frame=lines,label=\colorbox{green}{\small 例十},labelposition=topline,formatcom=\color{VerbatimColor}] 537 | 左\HR\fbox{% 538 | \includegraphics 539 | [angle=-60,totalheight=20mm,% 540 | width=30mm,keepaspectratio]% 541 | {w.eps}}% 542 | \HR 右 543 | \end{Verbatim} 544 | \end{minipage} 545 | 546 | \section{旋转和缩放对象}\label{sec:scalerotate} 547 | 除了 \cmd{includegraphics}命令外, 548 | \pkg{graphicx} 宏包还提供了另外四个命令用来旋转和缩放任意的 \LaTeX{} 对象,例如文本、图像等。 549 | \begin{lstlisting} 550 | \scalebox{水平缩放因子}[垂直缩放因子]{对象} 551 | \resizebox{宽度}{高度}{对象} 552 | \resizebox*{宽度}{整体高度}{对象} 553 | \rotatebox[选项]{角度}{对象} 554 | \end{lstlisting} 555 | 556 | 因为 \pkg{graphicx} 包的 \cmd{includegraphics} 已经带有 \opt{angle}、\opt{width} 等支持旋转和缩放的选项, 557 | 所以本节介绍的这几个命令很少在插图时使用。例如: 558 | \begin{lstlisting} 559 | \includegraphics[scale=2]{file.eps} 560 | \includegraphics[width=4in]{file.eps} 561 | \includegraphics[angle=45]{file.eps} 562 | \end{lstlisting} 563 | 上述命令和下面的命令等到的结果是相同的。 564 | \begin{lstlisting} 565 | \scalebox{2}{\includegraphics{file.eps}} 566 | \resizebox{4in}{!}{\includegraphics{file.eps}} 567 | \rotatebox{45}{\includegraphics{file.eps}} 568 | \end{lstlisting} 569 | 570 | 尽管结果相同,但最好还是用前一种方法, 571 | 因为它的速度更快,而且生成 PostScript 和 \file{pdf} 的效率更高。 572 | 573 | \subsection{scalebox 命令}\label{ssec:scalebox} 574 | 语法: 575 | \begin{lstlisting} 576 | \scalebox{水平缩放因子}[垂直缩放因子]{对象} 577 | \end{lstlisting} 578 | 579 | \cmdi{scalebox} 命令对其作用的对象进行缩放, 580 | 使得缩放后对象的宽度为原始宽度与“\texttt{水平缩放因子}”之积,高度为原始高度与“\texttt{垂直缩放因子}”之积。 581 | 如果“\texttt{垂直缩放因子}”没有给出,那么默认取为“\texttt{水平缩放因子}”, 582 | 以保持原始的宽高比进行缩放。 583 | 如果缩放因子为负值,则翻转该对象。下面是几个例子 584 | 585 | %\hspace{-1.5cm} 586 | \begin{center} 587 | \begin{minipage}[b]{.5\textwidth} 588 | \begin{center} 589 | \color{blue}{\CJKfamily{zhkai} 590 | \scalebox{2}{这是放大的文字} \\ 591 | 这是正常的文字 \\ 592 | \scalebox{.5}{这是缩小的文字}} 593 | \end{center} 594 | \par\vspace{0pt} 595 | \end{minipage}% 596 | \begin{minipage}[b]{.5\textwidth} 597 | \begin{lstlisting} 598 | \scalebox{2}{这是放大的文字} \\ 599 | 这是正常的文字 \\ 600 | \scalebox{.5}{这是缩小的文字} 601 | \end{lstlisting} 602 | \par\vspace{0pt} 603 | \end{minipage} 604 | \end{center} 605 | 606 | \begin{center} 607 | %\hspace{-1.5cm} 608 | \begin{minipage}[b]{.5\textwidth} 609 | \color{blue}{\CJKfamily{zhkai} 610 | \framebox{\scalebox{2}{% 611 | \parbox{.5in}{放大 \\ 和 \\ 缩小}}} 612 | \framebox{\scalebox{2}[1.5]{% 613 | \parbox{.5in}{放大 \\ 和 \\ 缩小}}}} 614 | \par\vspace{0pt} 615 | \end{minipage}% 616 | \begin{minipage}[b]{.5\textwidth} 617 | \begin{lstlisting} 618 | \framebox{\scalebox{2}{% 619 | \parbox{.5in}{放大 \\ 和 \\ 缩小}}} 620 | \framebox{\scalebox{2}[1.5]{% 621 | \parbox{.5in}{放大 \\ 和 \\ 缩小}}} 622 | \end{lstlisting} 623 | \par\vspace{0pt} 624 | \end{minipage} 625 | \end{center} 626 | 627 | \begin{center} 628 | %\hspace{-1.5cm} 629 | \begin{minipage}[b]{.5\textwidth} 630 | \begin{center} 631 | \color{blue}{\texttt{% 632 | China? \scalebox{-1}[1]{China?} \\ 633 | China? \scalebox{1}[-1]{China?} \\ 634 | China? \scalebox{-1}[-1]{China?} \\ 635 | China? \scalebox{-1}{China?}}} 636 | \end{center} 637 | \par\vspace{0pt} 638 | \end{minipage}% 639 | \begin{minipage}[b]{.5\textwidth} 640 | \begin{lstlisting} 641 | China? \scalebox{-1}[1]{China?} \\ 642 | China? \scalebox{1}[-1]{China?} \\ 643 | China? \scalebox{-1}[-1]{China?} \\ 644 | China? \scalebox{-1}{China?}} 645 | \end{lstlisting} 646 | \par\vspace{0pt} 647 | \end{minipage} 648 | \end{center} 649 | 650 | 651 | \subsection{resizebox 命令}\label{ssec:resizebox} 652 | 语法: 653 | \begin{lstlisting} 654 | \resizebox{宽度}{高度}{对象} 655 | \resizebox*{宽度}{整体高度}{对象} 656 | \end{lstlisting} 657 | 658 | \cmdi{resizebox} 命令将对象的大小改变为给定值。 659 | 如果“\texttt{宽度}”或“\texttt{高度}”中的任一项用 \texttt{!} 给出, 660 | 那么缩放时会保持原有的宽高比。 661 | 例如: 662 | \begin{lstlisting} 663 | \resizebox{2in}{!}{argument} 664 | \end{lstlisting} 665 | 将对象的宽度改变为2英寸,同时保持宽高比。 666 | 667 | 标准的 \LaTeXe{} 长度命令 \cmd{height}、\cmd{width}、\cmd{totalheight}、\cmd{depth} 可用来表示对象的原始尺寸。 668 | 因此, 669 | \begin{lstlisting} 670 | \resizebox{2in}{\height}{argument} 671 | \end{lstlisting} 672 | 使得对象的宽度改变为 2 英寸但保持原有高度不变。 673 | 674 | 此外,命令 \cmdi{reseizebox*} 与 \cmd{resizebox} 几乎是相同的, 675 | 不同之处仅在于第二个参数表示对象的整体高度。 676 | (关于高度和整体高度的定义见第~\ref{sec:terminology} 节, 677 | 关于 \opt{height} 和 \opt{totalheight} 选项的比较见第~\ref{ssec:diffheight} 节。) 678 | 679 | 下面是几个例子: 680 | 681 | \begin{center} 682 | %\hspace{-1.5cm} 683 | \begin{minipage}[b]{.4\textwidth} 684 | \begin{center} 685 | \color{blue}{\CJKfamily{zhkai} 686 | \framebox{\resizebox{5mm}{!}{% 687 | \parbox{14mm}{选项 \\ 角度 \\ 对象}}} 688 | \framebox{\resizebox{!}{10mm}{% 689 | \parbox{14mm}{选项 \\ 角度 \\ 对象}}}} 690 | \par\vspace{0pt} 691 | \end{center} 692 | \end{minipage}% 693 | \hspace{-1cm} 694 | \begin{minipage}[b]{.6\textwidth} 695 | \begin{lstlisting} 696 | \framebox{\resizebox{5mm}{!}{% 697 | \parbox{14mm}{选项 \\ 角度 \\ 对象}}} 698 | \framebox{\resizebox{!}{10mm}{% 699 | \parbox{14mm}{选项 \\ 角度 \\ 对象}}} 700 | \end{lstlisting} 701 | \par\vspace{0pt} 702 | \end{minipage} 703 | \end{center} 704 | 705 | \begin{center} 706 | %\hspace{-2cm} 707 | \begin{minipage}[b]{.4\textwidth} 708 | \begin{center} 709 | \color{blue}{\CJKfamily{zhkai} 710 | \resizebox*{2cm}{3cm}{\LaTeX{}~图形} \\ 711 | \resizebox*{2cm}{1cm}{\LaTeX{}~图形}} 712 | \par\vspace{0pt} 713 | \end{center} 714 | \end{minipage}% 715 | \begin{minipage}[b]{.6\textwidth} 716 | \begin{lstlisting} 717 | \resizebox*{2cm}{3cm}{\LaTeX{}~图形} \\ 718 | \resizebox*{2cm}{1cm}{\LaTeX{}~图形} 719 | \end{lstlisting} 720 | \par\vspace{0pt} 721 | \end{minipage} 722 | \end{center} 723 | 724 | 725 | \subsection{rotatebox 命令}\label{ssec:rotatebox} 726 | 语法: 727 | \begin{lstlisting} 728 | \rotatebox[选项]{角度}{对象} 729 | \end{lstlisting} 730 | \cmdi{rotatebox} 将对象旋转一给定度数的角度,逆时针方向为正。 731 | 默认选项下对象绕它的参考点旋转。 732 | \cmd{rotatebox} 命令中“\texttt{选项}”允许对象绕给定的点来旋转。 733 | \begin{enumerate} 734 | \item 给定\opt{[x=xdim,y=ydim]},则对象旋转所绕的点相对于参考点的 735 | 坐标为 $(\mathtt{xdim}, \mathtt{ydim})$。 736 | \item \opt{origin} 选项可以指定12个特殊点其中之一(见图~\ref{fig:rotatepoint})。 737 | \end{enumerate} 738 | 739 | \opt{origin} 点的水平位置由 \opt{lcr}(分别代表左、中、右)三个字母其中之一确定, 740 | 垂直位置则由 \opt{t,c,B,b}(分别代表顶部、中部、基线、底部)四个字母中的一个来确定。 741 | 例如: 742 | \begin{description} 743 | \item [\opt{[rb]}] 右下角。 744 | \item [\opt{[lt]}] 左上角。 745 | \item [\opt{[cB]}] 图形基线的中点。 746 | \end{description} 747 | 748 | \paragraph{几点说明:} 749 | \begin{itemize} 750 | \item 标记字母的顺序并不重要,\opt{[br]} 等同于 \opt{[rb]}。 751 | \item \opt{c} 代表水平位置的中点还是垂直位置的中点由和它一起的标记字母来决定。 752 | \item 如果只给出一个标记字母,那么另一个将被假设为 \opt{c}。 753 | 即,\opt{[c]} 等于\opt{[cc]},\opt{[l]}等于\opt{[lc]},\opt{[t]}等于\opt{[ct]},等等。 754 | \end{itemize} 755 | 756 | \begin{figure} 757 | \centering 758 | \includegraphics[width=.6\textwidth]{orig-point} 759 | \caption{可用的 \opt{origin} 点}\label{fig:rotatepoint} 760 | \end{figure} 761 | 762 | 下面是一个例子: 763 | 764 | \begin{center} 765 | %\hspace{-1.5cm} 766 | \begin{minipage}[b]{.4\textwidth} 767 | \begin{center} 768 | \setlength{\fboxsep}{0mm} 769 | \newcommand{\MyRot}[1]{% 770 | \fbox{\rotatebox{#1}{旋转~$#1^\circ$}}} 771 | \color{blue}{\CJKfamily{zhkai} 772 | \MyRot{0} \MyRot{45} \MyRot{90} 773 | \MyRot{135} \MyRot{180} \MyRot{225}} 774 | \end{center} 775 | \par\vspace{0pt} 776 | \end{minipage}% 777 | \begin{minipage}[b]{.6\textwidth} 778 | \begin{lstlisting} 779 | \setlength{\fboxsep}{0mm} 780 | \newcommand{\MyRot}[1]{% 781 | \fbox{\rotatebox{#1}{旋转~$#1^\circ$}}} 782 | \MyRot{0} \MyRot{45} \MyRot{90} 783 | \MyRot{135} \MyRot{180} \MyRot{225} 784 | \end{lstlisting} 785 | \par\vspace{0pt} 786 | \end{minipage} 787 | \end{center} 788 | 789 | 790 | \section{高级插图命令}\label{sec:adgraphcmd} 791 | 本节描述了一些 \LaTeXe{} 图形宏包套件的高级命令, 792 | 用于下述情形。 793 | \begin{enumerate} 794 | \item 当使用没有扩展名的文件名时。如: 795 | \begin{lstlisting} 796 | \includegraphics{file} 797 | \end{lstlisting} 798 | 799 | \item 当使用压缩的\file{eps} 图形文件时。见第~\ref{ssec:compresseps} 节。 800 | \item 当使用非\file{eps} 格式的图形文件时。见第~\ref{ssec:noneps} 节。 801 | \end{enumerate} 802 | 在这些情况下,\LaTeX{} 为了处理由命令 \cmd{includegraphics} 所导入的图像文件, 803 | 就需要用 \cmdi{DeclareGraphicsRule} 和 \cmdi{DeclareGraphicsExtensions} 命令来控制。 804 | \begin{itemize} 805 | \item \cmd{DeclareGraphicsExtensions} 命令指定了在没有提供图形文件扩展名的情况下, 806 | \LaTeX{} 将自动为其加上的扩展名列表(如 \file{.eps}、\file{.ps}、\file{.eps.gz} 等)。 807 | \item \cmd{DeclareGraphicsRule} 命令指定了对图形文件执行的命令。 808 | 执行这一命令要求操作系统支持管道功能,比如 Unix 等操作系统,而DOS则不行。 809 | 810 | 若将此命令指定为一解压缩命令,那么就可以使用压缩的 \file{eps} 图形文件。 811 | 若将此命令指定为一图形格式转换命令,那么就可以使用非\file{eps} 格式的图形文件。 812 | \end{itemize} 813 | 814 | \subsection{DeclareGraphicsExtensions 命令}\label{ssec:deextension} 815 | \cmd{DeclareGraphicsExtensions} 命令告诉 \LaTeX{}, 816 | 若 \cmd{includegraphics} 命令所引入的文件没有提供扩展名, 817 | 将试图为其自动加上什么样的扩展名。 818 | 819 | 为方便起见,在选择图形驱动\footnote{ 820 | 指定一个图形驱动选项如 \cmdOM{usepackage}{dvips}{graphics} 将会覆盖掉在 \texttt{graphics.cfg} 中设定的缺省驱动选项——旧译本注。} 821 | 时,就已经有一个相应的预设扩展名集。 822 | 举例来说,如果选择 \prgname{dvips} 作为图形驱动, 823 | 那么默认会使用下列图形文件扩展名(在 \file{dvips.def} 中定义): 824 | \begin{lstlisting} 825 | \DeclareGraphicsExtensions{.eps,.ps,.eps.gz,.ps.gz,.eps.Z} 826 | \end{lstlisting} 827 | 828 | 如果 \pkg{graphicx} 宏包使用 \prgname{pdftex} 驱动, 829 | 那么默认会使用下列图形文件扩展名(在 \file{pdftex.def} 中定义)\footnote{ 830 | 实际上在较新版本(2016年)中,\file{dvips.def} 中定义扩展名的方式为 831 | \begin{flushleft} 832 | \cmd{def}\cmdM{Gin@extions}{.eps,.ps,.eps.gz,.ps.gz,.eps.Z,.mps} 833 | \end{flushleft} 834 | \file{pdftex.def} 中定义扩展名的方式为 835 | \begin{flushleft} 836 | \cmd{def}\cmdM{Gin@extions}{.png,.pdf,.jpg,.mps,.jpeg,.PNG,.PDF,.JPG,.JPEG} 837 | \end{flushleft} 838 | ——译注}: 839 | \begin{lstlisting} 840 | \DeclareGraphicsExtensions{.png,.pdf,.jpg,.mps} 841 | \end{lstlisting} 842 | 843 | 在 \opt{dvips} 图像扩展名列表中, 844 | \cmdM{includegraphics}{file} 首先寻找 \file{file.eps}, 845 | 其次是 \file{file.ps},再其次是 \texttt{file.eps.gz},直到找到一个文件。 846 | 相应地,可以用 847 | \begin{lstlisting} 848 | \includegrapincs{file} 849 | \end{lstlisting} 850 | 取代 851 | \begin{lstlisting} 852 | \includegrapincs{file.eps} 853 | \end{lstlisting} 854 | 这样做的好处是如果以后决定压缩 \file{file.eps},也无须更改 \LaTeX{} 文件。 855 | 无后缀名的方式使得可以同时使用 \LaTeX{} 和 \pdfLaTeX{} 编译文档, 856 | 见第~\pageref{ssec:latexandpdflatex} 页的 \ref{ssec:latexandpdflatex} 节。 857 | 然而,这种无后缀名的方式可能会加剧内存池空间问题,详见下面的~\ref{sssec:poolspaceproblem} 小节。 858 | 859 | \subsubsection{无扩展名的文件} 860 | 需要注意的是, 861 | \begin{lstlisting} 862 | \includegrapincs{file} 863 | \end{lstlisting} 864 | 不会试图寻找 \file{file}, 865 | 除非空扩展名列表中包含空的扩展名 \verb+{}+。 866 | 例如: 867 | \begin{lstlisting} 868 | \DeclareGraphicsExtensions{.eps,.eps.gz,{}} 869 | \end{lstlisting} 870 | 将试图在没找到 \file{file.eps} 和 \file{file.eps.gz} 的情况下寻找 \file{file}。 871 | 872 | 由于默认的扩展名列表中不包含空扩展名, 873 | 如果想要使用无扩展名文件的话, 874 | 必须使用 \cmd{DeclareGraphicsExtensions} 命令定义一个包含空扩展名的列表。 875 | 876 | \subsubsection{池空间问题}\label{sssec:poolspaceproblem} 877 | 878 | 不给出扩展名而靠 \LaTeX{} 从 \cmd{DeclareGraphicsExtensions} 的扩展名列表中选择正确的扩展名可能 879 | 加剧池空间问题(见第~\ref{ssec:poolspace} 节)。 880 | 如果有池空间问题的话,应当使用 \cmd{DeclareGraphicsExtensions} 指定的扩展名数目尽可能小。如: 881 | \begin{lstlisting} 882 | \DeclareGraphicsExtensions{.eps,.eps.gz} 883 | \end{lstlisting} 884 | 885 | 886 | \subsection{DeclareGraphicsRule 命令}\label{ssec:derule} 887 | \cmdi{DeclareGraphicsRule} 命令指定 \cmd{includegraphics} 如何按照扩展名 888 | 来对操作图像文件。语法为 889 | \begin{lstlisting} 890 | \DeclareGraphicsRule{ext}{type}{sizefile}{command} 891 | \end{lstlisting} 892 | 例如,如下命令 893 | \begin{lstlisting} 894 | \DeclareGraphicsRule{.eps.gz}{eps}{.eps.bb}{`gunzip -c #1} 895 | \end{lstlisting} 896 | 指定任何以 \file{.eps.gz} 为扩展名的文件为压缩的\file{eps} 文件, 897 | 该文件的 BoundingBox 信息存放在扩展名为 \file{.eps.bb} 的文件中, 898 | 并用命令 \texttt{gunzip -c} 来解压缩 899 | (因为 \LaTeX{} 不能从压缩文件中读取 BoundingBox 信息, 900 | 所以 BoundingBox 行必须存放到非压缩文件中)。 901 | 902 | 可以允许有多个 \cmd{DeclareGraphicsRule} 命令。 903 | 904 | \cmd{DeclareGraphicsRule} 命令允许使用 \texttt{*} 代表任何未知扩展名, 905 | 例如: 906 | \begin{lstlisting} 907 | \DeclareGraphicsRule{*}{eps}{*}{} 908 | \end{lstlisting} 909 | 会导致所有未知扩展名的文件都被认为是 \file{eps} 文件, 910 | 比方说 \file{file.EPS} 就被当做\file{eps} 文件。 911 | 912 | \begin{table} 913 | \centering 914 | \caption{\cmd{DeclareGraphicsRule} 的选项}\label{tab:DeclaregruleArgs} 915 | \begin{tabular}{>{\ttfamily}l p{0.7\textwidth}} 916 | \toprule 917 | ext & 文件的扩展名。 \\ \hline 918 | type & 扩展名所对应的图像类型。 \\ \hline 919 | sizefile & 包含图像 BoundingBox 信息的文件的扩展名。 920 | 如果这一选项为空, 921 | 那么必须要在 \cmd{includegraphics} 命令中给定 \opt{bb} 选项的值。 \\ \hline 922 | command & 作用于图像文件的命令,此项常为空。 923 | 命令前必须有一个前单引号(键盘上数字键 \texttt{1} 左侧的键——译注), 924 | 注意不是常用的后单引号。 925 | 目前为止,只有 \prgname{dvips} 能够执行这样的命令。 926 | 参见第~\ref{ssec:noneps} 节关于如何用这样的命令来处理非 \file{eps} 格式图像和压缩的 \file{eps} 图像的例子。\\ 927 | \bottomrule 928 | \end{tabular} 929 | \end{table} 930 | 931 | 文件的扩展名定义为文件名里第一个句点以后的部分, 932 | \marginpar{文件名中的句点} 933 | 这样做是为了可以将 \file{.eps.gz} 结尾的文件识别成压缩的\file{eps} 文件。 934 | 为了避免混淆,文件的基本名中不要使用句点。 935 | 例如,指定文件 \file{file.name.eps.gz} 会让 \cmd{includegraphics} 寻找扩展名为 \file{.name.eps.gz} 所对应的图像规则。 936 | 由于这样的规则很有可能不存在,结果导致使用未知扩展名所对应的规则。 937 | 例外的情形是该文件的格式正好是缺省格式, 938 | 如果未知扩展名的文件都被认为是 \file{eps} 文件, 939 | 那么 \file{file.name.eps} 就恰巧能被正确地识别。 940 | 941 | 为方便起见,根据不同的图形驱动选项, 942 | \marginpar{预定义命令} 943 | 已经预定义了不同的缺省图像规则。 944 | 例如使用 \opt{dvips} 图形驱动选项时,文件 \file{dvips.def} 定义了如下缺省图形规则\footnote{ 945 | 实际上 \file{dvips.def} 的代码并没有使用 \cmd{DeclareGraphicsRule}, 946 | 不过效果是一样的。}: 947 | \begin{lstlisting} 948 | \DeclareGraphicsRule{.eps}{eps}{.eps}{} 949 | \DeclareGraphicsRule{.ps}{eps}{.ps}{} 950 | \DeclareGraphicsRule{.pz}{eps}{.bb}{`gunzip -c #1} 951 | \DeclareGraphicsRule{.eps.Z}{eps}{.eps.bb}{`gunzip -c #1} 952 | \DeclareGraphicsRule{.ps.Z}{eps}{.ps.bb}{`gunzip -c #1} 953 | \DeclareGraphicsRule{.eps.gz}{eps}{.eps.bb}{`gunzip -c #1} 954 | \DeclareGraphicsRule{.ps.gz}{eps}{.ps.bb}{`gunzip -c #1} 955 | \DeclareGraphicsRule{.pcx}{bmp}{}{} 956 | \DeclareGraphicsRule{.bmp}{bmp}{}{} 957 | \DeclareGraphicsRule{.msp}{bmp}{}{} 958 | \DeclareGraphicsRule{*}{eps}{*}{} 959 | \end{lstlisting} 960 | 前面两个命令定义扩展名为 \file{.eps} 和 \file{.ps} 的文件为 \file{eps} 文件, 961 | 它们后面的五个命令定义了压缩 \file{eps} 文件的扩展名和解压命令, 962 | 接下来的三个命令定义了位图文件 \file{pcx}、\file{bmp}、\file{msp} 的扩展名, 963 | 最后一个命令设定未知扩展名的文件按照 \file{eps} 文件处理。 964 | 965 | 如果使用 \pdfTeX 引擎,那么 \file{pdftex.def} 缺省定义了以下的图形规则\footnote{ 966 | \file{pdftex.def} 实际上先检查 \pdfTeX{} 的版本, 967 | 然后根据不同版本的处理方式定义相应的图形规则。}: 968 | \begin{lstlisting} 969 | \DeclareGraphicsRule{.png}{png}{.png}{} 970 | \DeclareGraphicsRule{.pdf}{pdf}{.pdf}{} 971 | \DeclareGraphicsRule{.jpg}{jpg}{.jpg}{} 972 | \DeclareGraphicsRule{.mps}{mps}{.mps}{} 973 | \end{lstlisting} 974 | 这样就指定了 \pdfTeX{} 支持的图像格式的处理方式。 975 | 976 | \clearpage 977 | \endinput 978 | 979 | -------------------------------------------------------------------------------- /src/preface.tex: -------------------------------------------------------------------------------- 1 | %preface.tex 2 | 3 | \section*{译序} 4 | 5 | 本文档是Keith Reckdahl所著``Using Imported Graphics in \LaTeX\ and \pdfLaTeX'' 的中文译本。 6 | 7 | Keith Reckdahl于1997年原著有文档``Using Imported Graphics in \LaTeXe{}'' 8 | (版本2.0,以下简称为 epslatex2), 9 | 并且已经由王磊前辈在2000年将其翻译成《\LaTeXe{} 插图指南》。 10 | 该译本由于质量上乘,历史悠久,并且作为帮助文档附在CTEX套装内发行, 11 | 因此在国内流传甚广、影响力甚大。 12 | 13 | 然而,也正是因为历史悠久,所以出现了很多与当前 \LaTeX{} 插图技术脱节的地方。 14 | 例如只讨论 \prgname{latex}+\prgname{dvips} 模式下 \file{eps} 图像格式的插入, 15 | 以及使用 \pkg{caption2} 等过时宏包进行插图标题的处理等等。 16 | 为此,原作者在2006年将epslatex2更新为版本3.0.1(以下简称为 epslatex3)。 17 | 虽然关于 \LaTeX{} 插图这一话题有不少书籍和电子文档都有相关介绍, 18 | 不过即便距今已十年有余,但英文版epslatex3仍可以说是最详尽的参考文档。 19 | 而国内除了一些出版的书籍外,尚没有一份全面的专题文档介绍关于插图的各方面知识。 20 | 这也正是翻译epslatex3的动机。 21 | 22 | 随着这些年 \LaTeX{} 的发展,特别是相关宏包以及 \XeTeX{}、\LuaTeX 等新编译引擎的出现和发展, 23 | 2006年版本的epslatex3也有不少已经过时的知识。 24 | 因此在翻译过程中也加入了译者自己的一些修改。 25 | 较大的改动有: 26 | \begin{itemize} 27 | \item 原文档第7节只讨论了 \prgname{dvips} 和 \prgname{pdftex} 两种引擎程序。 28 | 这里加入了 \prgname{dvipdfmx}、\prgname{xetex}和 \prgname{luatex}等更多编译方式。 29 | \item 原文档12.1节提到了 \pkg{overpic} 宏包, 30 | 本文档基于旧译本,在第~\ref{ssec:overpic} 节加以详细介绍。 31 | \item 在第~\ref{sssec:esopic} 节简要介绍了 \pkg{eso-pic} 宏包用法。 32 | \item 原文档的第32节使用 \pkg{subfig} 宏包处理子图标题, 33 | 这里代之以介绍 \pkg{subcaption} 宏包。 34 | \item 第~\ref{sec:figintext} 节关于图文混排的内容来自于旧译本。 35 | \end{itemize} 36 | 对于明显过时的章节将在行文处加以说明,但出于完整性考虑仍然翻译出来供参考。 37 | 此外,行文各处的细节修改则通过脚注的方式给出。 38 | 39 | 本文档主要是在王磊前辈的译文基础上, 40 | 结合英文版epslatex3对epslatex2的变动翻译而来。 41 | 考虑到目前的 \LaTeX{} 编译程序并非只有 \pdfTeX{}, 42 | 因此参照旧译本仍命名为《\LaTeXe{} 插图指南》。 43 | 继续使用或修改了旧译本中添加的内容已征得原译者许可。 44 | 在翻译过程中还参考了刘海洋的著作《\LaTeX{} 入门》以及其它相关宏包的文档, 45 | 在此一并表示感谢。 46 | 47 | 本文档可在 \LaTeX\ 项目公共协议(LPPL, \LaTeX\ Project Public License)下复制和分发。 48 | LPPL 协议的内容见 \url{http://www.latex-project.org/lppl/}。 49 | 50 | \begin{flushright} 51 | 盛文博\\ 52 | \href{mailto:wbsheng88@foxmail.com}{}\\ 53 | 二零一七年八月 54 | \end{flushright} 55 | 56 | \newpage 57 | \section*{前言} 58 | \label{sect:preface} 59 | 60 | 在用 \LaTeX\ 编写论文、书稿时,经常要遇到使用图形的情况。 61 | 本书将讲述如何在 \LaTeX\ 文件中插入图像以及其它一些相关问题。\footnote{ 62 | 原文档涉及到图片的单词包括“figure”和“graphic”, 63 | 前者指的是 \LaTeX{} 文档中作为独立单元的图元素,而后者更偏向于来自于外部的图片文件及图片内容。 64 | 本译文中将 figure 和 graphic 分别翻译为“图形”和“图像”。——译注} 65 | 由于完全阅读本书需要较多的时间, 66 | 如果想要查询某一特定的信息, 67 | 那么可以通过\hyperref[toc]{目录}和\hyperref[sec:index]{索引}直接阅读相关内容。 68 | 69 | 插图的基本步骤是,首先确认宏包的导入 70 | \begin{lstlisting} 71 | \usepackage{graphicx} 72 | \end{lstlisting} 73 | 然后使用 \cmd{includegraphics} 命令来插图 74 | \begin{lstlisting} 75 | \includegraphics{file} 76 | \end{lstlisting} 77 | 该命令的更多细节将在第~\ref{sec:graphicsinclusion} 节介绍。 78 | 79 | 本文档分为如下的五个部分。 80 | 81 | \paragraph{第一部分:背景介绍} 82 | 这一部分介绍了一些有关的历史资料和基本的 \LaTeX{} 术语。 83 | 此外还包括 84 | \begin{itemize} 85 | \item Encapsulated PostScript (\file{eps}) 图形格式,\file{eps} 与 \file{ps} 文件的区别, 86 | 以及将其它图形格式转为 \file{eps} 格式的方法。 87 | \item 通过 \pdfTeX 引擎可以直接导入的图片格式(\file{jpeg}, \file{png}, \file{pdf}, \MetaPost)。 88 | \item 一些与图形有关的自由软件和共享软件。 89 | \end{itemize} 90 | 91 | \paragraph{第二部分:\LaTeX{} 图形宏集} 92 | 这一部分详细介绍了 \LaTeXe{} 图形宏集中用于导入、缩放和旋转图形的命令。 93 | 这部分涵盖了 \LaTeXe{} 图形宏集文档的大部分内容\cite{grfguide}。 94 | 95 | \paragraph{第三部分:\LaTeXe{} 图形命令的使用} 96 | 这一部分介绍了如何使用 \LaTeXe{} 图形宏包套件中的命令来引入、缩放和旋转图形。 97 | 此外还讨论了以下三种情况: 98 | \begin{itemize} 99 | \item 在支持管道(例如 UNIX )的系统中,使用 \prgname{dvips} 还可以实时地插入压缩的 EPS 图形或其它格式的图形(\file{tiff}, \file{gif}, \file{jpeg}, \file{pict} 等)。 100 | 在其它的系统中,非 \file{eps} 格式图形必须先转换为 \file{eps} 才行。 101 | 因为无论 \LaTeX\ 还是 \prgname{dvips} 都没有内置解压缩和转换图像格式转换的功能, 102 | 所以相应软件需要使用者提供。 103 | \item 由于许多图形应用程序只支持 \ascii 文本格式, 104 | \pkg{psfrag} 宏包可以将 \file{eps} 图形中的文字替换为 \LaTeX{} 符号或数学表达式。 105 | \item 当一个\file{eps}图形被多次使用时(比如文字后面或页眉上的徽标),最后生成的 \file{ps} 文件会包含此\file{eps}图形的很多个副本。 106 | 当所使用的图形不是位图格式时,可以通过定义 PostScript 命令来避免此图形被重复插入, 107 | 从而减小得到的\file{eps}文件体积。 108 | \end{itemize} 109 | 110 | \paragraph{第四部分:\env{figure} 环境} 111 | 将插入的图形放置于\env{figure} 环境中有几个优点: 112 | 在\env{figure}环境中的图形会被自动编号,从而可以引用或添加到目录中; 113 | 置于该环境中的图形可以通过浮动实现较好的分页,所以可以很容易制作出具有专业水准的文稿。 114 | 除了介绍\env{figure}环境的一般信息外,这一部分还讲述了如下一些和图形有关的话题: 115 | \begin{itemize} 116 | \item 怎样自定义\env{figure}环境,例如怎样调整图形的位置、图形周围的距离、 117 | 标题的距离,以及在图形与文本之间加入分隔线等。 118 | 还可以自定义标题的格式,改变标题的样式、宽度和字体等。 119 | \item 怎样创建边注图形和伸入边注位置的宽图形。 120 | \item 怎样在纵向页面版式的文档中加入横向图形。 121 | \item 怎样将标题放置于图形的两边而不是上下。 122 | \item 对于双面排版的文档,怎样确保一幅图形放置于奇数页或偶数页。 123 | 还有,怎样确保两幅图形都出现在同一对开页面上。 124 | \item 怎样得到带框的图形。 125 | \end{itemize} 126 | 127 | \paragraph{第五部分:复杂图形} 128 | 这一部分介绍如何创建较为复杂的图形,用以同时包含多个图像。 129 | \begin{itemize} 130 | \item 怎样形成并列的图形、图像和子图。 131 | \item 怎样在一个浮动体内将一个表格放置于图形之后。 132 | \item 怎样堆叠多行图形。 133 | \item 怎样创建跨页的连续图形。 134 | \end{itemize} 135 | 136 | \subsection*{如何得到本文档} 137 | 本书的 \file{pdf}格式和 \file{ps}格式的英文原版网络位置为\footnote{ 138 | 此段有删改。——译注} 139 | \begin{center} 140 | \href{http://ctan.tug.org/tex-archive/info/epslatex/english/epslatex.pdf}{CTAN/info/epslatex/english/epslatex.pdf}\\ 141 | \href{http://ctan.tug.org/tex-archive/info/epslatex/english/epslatex.ps}{CTAN/info/epslatex/english/epslatex.ps} 142 | \end{center} 143 | 本文档版本2.0的法文版本由Jean-Pierre Drucbert完成, 144 | 其 \file{pdf} 和 \file{ps} 文件可以从如下位置获得 145 | \begin{center} 146 | \href{http://ctan.tug.org/tex-archive/info/epslatex/french/fepslatex.pdf}{CTAN/info/epslatex/french/fepslatex.pdf} \\ 147 | \href{http://ctan.tug.org/tex-archive/info/epslatex/french/fepslatex.ps}{CTAN/info/epslatex/french/fepslatex.ps} 148 | \end{center} 149 | 完整的 CTAN (Comprehensive \TeX{} Archive Network) 映像站点可以从 \url{https://ctan.org/mirrors} 获得。 150 | 151 | \subsection*{致谢} 152 | 略。 153 | 154 | \subsection*{许可协议} 155 | 版权所有 \copyright{} 1995--2006 Keith Reckdahl. 156 | 可在 \LaTeX\ 项目公共协议(LPPL, \LaTeX\ Project Public License)下复制和分发。 157 | 158 | LPPL 协议的内容可参见 \url{http://www.latex-project.org/lppl/}。 159 | 160 | 161 | \clearpage 162 | \endinput 163 | -------------------------------------------------------------------------------- /src/ref.bib: -------------------------------------------------------------------------------- 1 | 2 | @book{Lamport1994, 3 | author = {Leslie Lamport}, 4 | title = {\LaTeX{}: A Document Preparation System}, 5 | date = {1994}, 6 | edition = {2}, 7 | publisher = {Addison-Wesley}, 8 | location = {Reading, Massachusetts}, 9 | isbn = {0-201-52983-1} 10 | } 11 | 12 | @book{Kopka2004, 13 | author = {Helmut Kopka and Patrick Daly}, 14 | title = {A Guide to \LaTeX{}}, 15 | date = {2004}, 16 | edition = {4}, 17 | publisher = {Addison-Wesley}, 18 | location = {Reading, Massachusetts}, 19 | isbn = {0-321-17385-6} 20 | } 21 | 22 | @book{Mittelbach2004, 23 | author = {Frank Mittelbach and Michel Goossens and Johannes Braams and David Carlisle and Chris Rowley}, 24 | title = {The LaTeX Companion}, 25 | date = {2004}, 26 | edition = {2}, 27 | publisher = {Addison-Wesley Pearson Education}, 28 | location = {Boston, Massachusetts}, 29 | isbn = {0-201-36299-6} 30 | } 31 | 32 | @book{Goossens1997, 33 | author = {Michel Goossens and Sebastian Rahtz and Frank Mittelbach}, 34 | title = {The \LaTeX{} Graphics Companion}, 35 | date = {1997}, 36 | publisher = {Addison-Wesley}, 37 | location = {Reading, Massachusetts}, 38 | isbn = {0-201-85469-4} 39 | } 40 | 41 | @book{Goossens1999, 42 | author = {Michel Goossens and Sebastian Rahtz and Frank Mittelbach}, 43 | title = {The \LaTeX{} Web Companion}, 44 | date = {1999}, 45 | publisher = {Addison-Wesley}, 46 | location = {Reading, Massachusetts}, 47 | isbn = {0-201-43311-7} 48 | } 49 | 50 | @online{pdftex-doc, 51 | author = {\HanTheThanh{} and Sebastian Rahtz and Hans Hagen and Hartmut Henkel and Pawel Jackowski and Martin Schröder}, 52 | title = {The pdf\TeX{} user manual}, 53 | date = {2016}, 54 | url = {http://mirrors.ctan.org/systems/doc/pdftex/manual/pdftex-a.pdf} 55 | } 56 | 57 | @online{grfguide, 58 | author = {David Carlisle}, 59 | title = {Packages in the `graphics’ bundle}, 60 | date = {2016}, 61 | url = {http://mirrors.ctan.org/macros/latex/required/graphics/grfguide.pdf} 62 | } 63 | 64 | @online{lshort, 65 | author = {Tobias Oetiker and Hubert Partl and Irene Hyna and Elisabeth Schlegl}, 66 | title = {The Not So Short Introduction to \LaTeXe{}}, 67 | date = {2016}, 68 | url = {http://mirrors.ctan.org/info/lshort/english/lshort.pdf} 69 | } 70 | 71 | @online{simplifed-intro, 72 | author = {Harvey Greenberg}, 73 | title = {A Simplified Introduction to \LaTeX{}}, 74 | date = {2010}, 75 | url = {http://mirrors.ctan.org/info/simplified-latex/simplified-intro.pdf} 76 | } 77 | 78 | @online{afterpage-doc, 79 | author = {David Carlisle}, 80 | title = {The \pkg{afterpage} package}, 81 | date = {2014}, 82 | url = {http://mirrors.ctan.org/macros/latex/required/tools/afterpage.pdf} 83 | } 84 | 85 | 86 | @online{background-doc, 87 | author = {Gonzalo Medina}, 88 | title = {The \pkg{background} package}, 89 | date = {2014}, 90 | url = {http://mirrors.ctan.org/macros/latex/contrib/background/background.pdf} 91 | } 92 | 93 | @online{calc-doc, 94 | author = {Kresten Krab Thorup and Frank Jensen and Chris Rowley}, 95 | title = {The \pkg{calc} package: Infix notation arithmetic in \LaTeX{}}, 96 | date = {2014}, 97 | url = {http://mirrors.ctan.org/macros/latex/required/tools/calc.pdf} 98 | } 99 | 100 | @online{caption-doc, 101 | author = {Axel Sommerfeldt}, 102 | title = {Customizing captions of floating environments}, 103 | date = {2011}, 104 | url = {http://mirrors.ctan.org/macros/latex/contrib/caption/caption-eng.pdf} 105 | } 106 | 107 | @online{ccaption-doc, 108 | author = {Peter Wilson and Herries Press}, 109 | title = {The \pkg{ccaption} package}, 110 | date = {2011}, 111 | url = {http://mirrors.ctan.org/macros/latex/contrib/ccaption/ccaption.pdf} 112 | } 113 | 114 | @online{cutwin-doc, 115 | author = {Peter Wilsony and Alan Hoenig}, 116 | title = {Making cutouts in paragraphs}, 117 | date = {2010}, 118 | url = {http://mirrors.ctan.org/macros/latex/contrib/cutwin/cutwin.pdf} 119 | } 120 | 121 | @online{endfloat-doc, 122 | author = {James Darrell McCauley and Jeff Goldberg and Axel Sommerfeldt}, 123 | title = {The \pkg{endfloat} package}, 124 | date = {2011}, 125 | url = {http://mirrors.ctan.org/macros/latex/contrib/endfloat/endfloat.pdf} 126 | } 127 | 128 | @online{eso-pic-doc, 129 | author = {Rolf Niepraschk}, 130 | title = {The \pkg{eso-pic} package}, 131 | date = {2015}, 132 | url = {http://mirrors.ctan.org/macros/latex/contrib/eso-pic/eso-pic.pdf} 133 | } 134 | 135 | @online{fancybox-doc, 136 | author = {Timothy Van Zandt}, 137 | title = {Documentation for \pkg{fancybox.sty}: Box tips and tricks for \LaTeX{}}, 138 | date = {2010}, 139 | url = {http://mirrors.ctan.org/macros/latex/contrib/fancybox/fancybox-doc.pdf} 140 | } 141 | 142 | @online{fancyhdr-doc, 143 | author = {Piet van Oostrum}, 144 | title = {Page layout in \LaTeX{}}, 145 | date = {2016}, 146 | url = {http://mirrors.ctan.org/macros/latex/contrib/fancybox/fancybox-doc.pdf} 147 | } 148 | 149 | @online{flafter-doc, 150 | author = {The \LaTeX{} Team}, 151 | title = {Standard LaTeX floats after reference}, 152 | date = {2015}, 153 | url = {http://mirrors.ctan.org/macros/latex/base/source2e.pdf} 154 | } 155 | 156 | @online{float-doc, 157 | author = {Anselm Lingnau}, 158 | title = {An Improved Environment for Floats}, 159 | date = {2001}, 160 | url = {http://mirrors.ctan.org/macros/latex/contrib/float/float.pdf} 161 | } 162 | 163 | @online{floatflt-doc, 164 | author = {Mats Dahlgreny}, 165 | title = {Welcome to the \pkg{floatflt} package!}, 166 | date = {1998}, 167 | url = {http://mirrors.ctan.org/macros/latex/contrib/floatflt/floatflt.pdf} 168 | } 169 | 170 | @online{graphicx-psmin-doc, 171 | author = {The \LaTeX{} Team}, 172 | title = {The \pkg{graphicx-psmin} package}, 173 | date = {2005}, 174 | url = {http://mirrors.ctan.org/macros/latex/contrib/graphicx-psmin/graphicx-psmin.pdf} 175 | } 176 | 177 | @online{hyperref-doc, 178 | author = {Sebastian Rahtz and Heiko Oberdiek}, 179 | title = {Hypertext marks in \LaTeX{}: a manual for hyperref}, 180 | date = {2012}, 181 | url = {http://mirrors.ctan.org/macros/latex/contrib/hyperref/doc/manual.pdf} 182 | } 183 | 184 | @online{ifpdf-doc, 185 | author = {\LaTeX3 project}, 186 | title = {The ifpdf Package}, 187 | date = {2016}, 188 | url = {http://mirrors.ctan.org/macros/latex/contrib/oberdiek/ifpdf.pdf} 189 | } 190 | 191 | @online{ifthen-doc, 192 | author = {David Carlisle}, 193 | title = {The ifthen package}, 194 | date = {2014}, 195 | url = {http://mirrors.ctan.org/macros/latex/base/ifthen.pdf} 196 | } 197 | 198 | @online{lscape-doc, 199 | author = {David Carlisle}, 200 | title = {The lscape package}, 201 | date = {2000}, 202 | url = {http://mirrors.ctan.org/macros/latex/required/graphics/lscape.pdf} 203 | } 204 | 205 | @online{metapost-doc, 206 | author = {John D. Hobby}, 207 | title = {{METAPOST} A User's Man­ual}, 208 | date = {2014}, 209 | url = {http://mirrors.ctan.org/systems/doc/metapost/mpman.pdf} 210 | } 211 | 212 | @online{morefloats-doc, 213 | author = {Hans-Martin Münch}, 214 | title = {The \pkg{morefloats} package}, 215 | date = {2015}, 216 | url = {http://mirrors.ctan.org/macros/latex/contrib/morefloats/morefloats.pdf} 217 | } 218 | 219 | @online{overpic-doc, 220 | author = {Rolf Niepraschk}, 221 | title = {The \pkg{overpic} package}, 222 | date = {1999}, 223 | url = {http://mirrors/macros/latex/contrib/overpic/README} 224 | } 225 | 226 | @online{picinpar-doc, 227 | author = {Friedhelm Sowa}, 228 | title = {The \pkg{picinpar} package: Macros for making windows with \LaTeX{}}, 229 | date = {1993}, 230 | url = {http://mirrors.ctan.org/macros/latex209/contrib/picinpar/picinpar-en.pdf} 231 | } 232 | 233 | @online{placeins-doc, 234 | author = {Donald Arseneau}, 235 | title = {The \pkg{placeins} package}, 236 | date = {2005}, 237 | url = {http://mirrors.ctan.org/macros/latex/contrib/placeins/placeins-doc.pdf} 238 | } 239 | 240 | @online{psfrag-doc, 241 | author = {Michael C. Grant and David Carlisle}, 242 | title = {The \pkg{PSfrag} package, version 3}, 243 | date = {1998}, 244 | url = {http://mirrors.ctan.org/macros/latex/contrib/psfrag/pfgguide.pdf} 245 | } 246 | 247 | @online{pstool-doc, 248 | author = {Will Robertson}, 249 | title = {The \pkg{pstool} package}, 250 | date = {2014}, 251 | url = {http://mirrors.ctan.org/macros/latex/contrib/pstool/pstool.pdf} 252 | } 253 | 254 | @online{rotating-doc, 255 | author = {Robin Fairbairns and Sebastian Rahtz and Leonor Barroca}, 256 | title = {The \pkg{rotating} package}, 257 | date = {2016}, 258 | url = {http://mirrors.ctan.org/macros/latex/required/graphics/rotating.pdf} 259 | } 260 | 261 | @online{sidecap-doc, 262 | author = {Rolf Niepraschk and Hubert Gäßlein}, 263 | title = {The \pkg{sidecap} package}, 264 | date = {2003}, 265 | url = {http://mirrors.ctan.org/macros/latex/contrib/sidecap/sidecap.pdf} 266 | } 267 | 268 | @online{subcaption-doc, 269 | author = {Axel Sommerfeldt}, 270 | title = {The \pkg{subcaption} package}, 271 | date = {2013}, 272 | url = {http://mirrors.ctan.org/macros/latex/contrib/caption/subcaption.pdf} 273 | } 274 | 275 | @online{topcapt-doc, 276 | author = {Robin Fairbairns}, 277 | title = {The \pkg{topcapt} package}, 278 | date = {2004}, 279 | url = {http://www.ctan.org/tex-archive/macros/latex/contrib/misc/topcapt.sty} 280 | } 281 | 282 | @online{varioref-doc, 283 | author = {Frank Mittelbach}, 284 | title = {The \pkg{varioref} package}, 285 | date = {2016}, 286 | url = {http://mirrors.ctan.org/macros/latex/required/tools/varioref.pdf} 287 | } 288 | 289 | @online{wrapfig-doc, 290 | author = {Donald Arseneau}, 291 | title = {The \pkg{wrapfig} package}, 292 | date = {2003}, 293 | url = {http://mirrors.ctan.org/macros/latex/contrib/wrapfig/wrapfig-doc.pdf} 294 | } 295 | 296 | @online{xwatermark-doc, 297 | author = {Ahmed Musa}, 298 | title = {The \pkg{xwatermark} package}, 299 | date = {2012}, 300 | url = {http://mirrors.ctan.org/macros/latex/contrib/xwatermark/xwatermark-doc.pdf} 301 | } 302 | -------------------------------------------------------------------------------- /src/title.tex: -------------------------------------------------------------------------------- 1 | 2 | \def\HugeRoman{\bfseries\fontsize{2cm}{2cm}\selectfont\color{white}} 3 | \def\HugeChinese{\bfseries\fontsize{1.5cm}{1.5cm}\selectfont\color{light}} 4 | 5 | \thispagestyle{empty} 6 | \newpagecolor{PageColor}\afterpage{\restorepagecolor} 7 | 8 | \AddToShipoutPicture*{% 9 | \setlength{\unitlength}{1cm}% 10 | \color{white}% 11 | \linethickness{5pt}% 12 | \put(3,0){\line(0,1){30}} 13 | \put(0,5){\line(1,0){3}} 14 | \put(0,10){\line(1,0){3}} 15 | \put(0,15){\line(1,0){3}} 16 | \put(0,20){\line(1,0){3}} 17 | \put(0,25){\line(1,0){3}} 18 | } 19 | 20 | %\vspace{10pt} 21 | {\hspace{-15pt}\hypertarget{title}{\HugeRoman \LaTeXe{}}}% 22 | \hfill{% 23 | \raisebox{-40pt}{% 24 | \fcolorbox{white}{white}{% 25 | \parbox{2.5cm}{% 26 | \vbox to 12cm{% 27 | \vfill\hbox to 2.5cm{\hfill\CJKfamily{hei}\HugeChinese 插\hfill}% 28 | \vfill\vfill 29 | \hbox to 2.5cm{\hfill\CJKfamily{hei}\HugeChinese 图\hfill}% 30 | \vfill\vfill 31 | \hbox to 2.5cm{\hfill\CJKfamily{hei}\HugeChinese 指\hfill}% 32 | \vfill\vfill 33 | \hbox to 2.5cm{\hfill\CJKfamily{hei}\HugeChinese 南\hfill}% 34 | \vfill} 35 | } 36 | } 37 | } 38 | } 39 | 40 | \vskip -7.5cm 41 | 42 | \hskip -15pt 43 | \begin{overpic}[scale=0.5]{golfer} 44 | \put(4,48){\huge \color{red}{\bf \LaTeX}} 45 | \put(4,38){\huge \color{red}{\bf Graphics}} 46 | \put(31,7){\includegraphics[scale=.25]{golfer}} 47 | \put(49,11){\includegraphics[scale=.10]{golfer}} 48 | \end{overpic} 49 | 50 | \clearpage 51 | 52 | \thispagestyle{empty} 53 | 54 | \begin{center} 55 | 56 | \vbox to \textheight{\vfill 57 | {\Large Using Imported graphics in \LaTeX{} and \pdfLaTeX} \\[25pt] 58 | {\large Keith Reckdahl }\\ 59 | {epslatex at yahoo dot com}\\[25pt] 60 | Version 3.0.1 \\ 61 | January 12, 2006 62 | \vfill} 63 | \end{center} 64 | 65 | 66 | \clearpage 67 | 68 | \setcounter{page}{1} 69 | --------------------------------------------------------------------------------