├── .github └── workflows │ └── makepdf.yml ├── .gitignore ├── .vscode └── settings.json ├── Makefile ├── README.md ├── a3cover.tex ├── data ├── abstract.tex ├── ack.tex ├── app01.tex ├── app02.tex ├── app03.tex ├── chap01.tex ├── chap02.tex ├── chap03.tex ├── chap04.tex ├── cover.tex ├── denotation.tex ├── resume.tex └── review.tex ├── docutils.sty ├── figures ├── fanfu.eps ├── golfer.eps ├── qingming.eps ├── zzu.pdf ├── zzu.tex ├── zzubachelor.pdf ├── zzubachelor.tex └── zzulogo.pdf ├── main.tex ├── ref └── refs.bib ├── spine.tex ├── zzubib.bst └── zzuthesis.cls /.github/workflows/makepdf.yml: -------------------------------------------------------------------------------- 1 | name: Build LaTeX document 2 | on: [push] 3 | 4 | permissions: 5 | contents: write 6 | 7 | jobs: 8 | build_latex: 9 | runs-on: ubuntu-latest 10 | steps: 11 | - name: Set up Git repository 12 | uses: actions/checkout@v3 13 | - name: Compile LaTeX document 14 | uses: xu-cheng/latex-action@v2 15 | with: 16 | root_file: main.tex 17 | latexmk_use_xelatex: true 18 | - name: Upload PDF file 19 | uses: actions/upload-artifact@v3 20 | with: 21 | name: PDF 22 | path: main.pdf 23 | - name: Upload binaries to release 24 | uses: svenstaro/upload-release-action@v2 25 | with: 26 | repo_token: ${{ secrets.GITHUB_TOKEN }} 27 | file: main.pdf 28 | asset_name: main.pdf 29 | tag: ${{ github.ref }} 30 | overwrite: true 31 | body: "the generated pdf is released" 32 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.hd 2 | *.exa 3 | 4 | ## Core latex/pdflatex auxiliary files: 5 | *.aux 6 | *.lof 7 | *.log 8 | *.lot 9 | *.fls 10 | *.out 11 | *.toc 12 | *.fmt 13 | *.xdv 14 | 15 | ## Intermediate documents: 16 | *.dvi 17 | *-converted-to.* 18 | # these rules might exclude image files for figures etc. 19 | # *.ps 20 | # *.eps 21 | *.pdf 22 | 23 | ## Bibliography auxiliary files (bibtex/biblatex/biber): 24 | *.bbl 25 | *.bcf 26 | *.blg 27 | *-blx.aux 28 | *-blx.bib 29 | *.brf 30 | *.run.xml 31 | 32 | ## Build tool auxiliary files: 33 | *.fdb_latexmk 34 | *.synctex 35 | *.synctex.gz 36 | *.synctex.gz(busy) 37 | *.pdfsync 38 | 39 | ## Auxiliary and intermediate files from other packages: 40 | # algorithms 41 | *.alg 42 | *.loa 43 | 44 | # achemso 45 | acs-*.bib 46 | 47 | # amsthm 48 | *.thm 49 | 50 | # beamer 51 | *.nav 52 | *.snm 53 | *.vrb 54 | 55 | # cprotect 56 | *.cpt 57 | 58 | #(e)ledmac/(e)ledpar 59 | *.end 60 | *.[1-9] 61 | *.[1-9][0-9] 62 | *.[1-9][0-9][0-9] 63 | *.[1-9]R 64 | *.[1-9][0-9]R 65 | *.[1-9][0-9][0-9]R 66 | *.eledsec[1-9] 67 | *.eledsec[1-9]R 68 | *.eledsec[1-9][0-9] 69 | *.eledsec[1-9][0-9]R 70 | *.eledsec[1-9][0-9][0-9] 71 | *.eledsec[1-9][0-9][0-9]R 72 | 73 | # glossaries 74 | *.acn 75 | *.acr 76 | *.glg 77 | *.glo 78 | *.gls 79 | 80 | # gnuplottex 81 | *-gnuplottex-* 82 | 83 | # hyperref 84 | *.brf 85 | 86 | # knitr 87 | *-concordance.tex 88 | *.tikz 89 | *-tikzDictionary 90 | 91 | # listings 92 | *.lol 93 | 94 | # makeidx 95 | *.idx 96 | *.ilg 97 | *.ind 98 | *.ist 99 | 100 | # minitoc 101 | *.maf 102 | *.mtc 103 | *.mtc[0-9] 104 | *.mtc[1-9][0-9] 105 | 106 | # minted 107 | _minted* 108 | *.pyg 109 | 110 | # morewrites 111 | *.mw 112 | 113 | # mylatexformat 114 | *.fmt 115 | 116 | # nomencl 117 | *.nlo 118 | 119 | # sagetex 120 | *.sagetex.sage 121 | *.sagetex.py 122 | *.sagetex.scmd 123 | 124 | # sympy 125 | *.sout 126 | *.sympy 127 | sympy-plots-for-*.tex/ 128 | 129 | # pdfcomment 130 | *.upa 131 | *.upb 132 | 133 | #pythontex 134 | *.pytxcode 135 | pythontex-files-*/ 136 | 137 | # Texpad 138 | .texpadtmp 139 | 140 | # TikZ & PGF 141 | *.dpth 142 | *.md5 143 | *.auxlock 144 | 145 | # todonotes 146 | *.tdo 147 | 148 | # xindy 149 | *.xdy 150 | 151 | # xypic precompiled matrices 152 | *.xyc 153 | 154 | # WinEdt 155 | *.bak 156 | *.sav 157 | 158 | # endfloat 159 | *.ttt 160 | *.fff 161 | 162 | # Latexian 163 | TSWLatexianTemp* 164 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "psi-header.config": { 3 | "forceToTop": true, 4 | "blankLinesAfter": 0 5 | }, 6 | "psi-header.changes-tracking": { 7 | "isActive": true, 8 | "include": ["latex", "tex"], 9 | "autoHeader": "manualSave", 10 | "enforceHeader": false 11 | }, 12 | "psi-header.variables": [ 13 | ["author", "Yuan Xiaoshuai"], 14 | ["authoremail", "yxshuai@gmail.com"] 15 | ], 16 | "psi-header.lang-config": [ 17 | { 18 | "language": "latex", 19 | "modDate": "Last modified: ", 20 | "modDateFormat": "YYYY-MM-DD HH:mm", 21 | "begin": "%%================================================", 22 | "prefix": "%% ", 23 | "end": "%%================================================", 24 | "blankLinesAfter": 0 25 | }, 26 | { 27 | "language": "tex", 28 | "mapTo": "latex" 29 | } 30 | ], 31 | "psi-header.templates": [ 32 | { 33 | "language": "latex", 34 | "template": [ 35 | "Filename: <>", 36 | "Encoding: UTF-8", 37 | "Author: <> - <>", 38 | "Created: <>", 39 | "Last modified: <>", 40 | ] 41 | }, 42 | { 43 | "language": "tex", 44 | "mapTo": "latex" 45 | } 46 | ], 47 | "files.associations": { 48 | "*.cfg": "latex" 49 | } 50 | } -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | # Makefile for ZzuThesis 2 | 3 | LATEXMKOPTS = -xelatex -file-line-error -halt-on-error -interaction=nonstopmode 4 | THESISMAIN = main 5 | PACKAGE = zzuthesis 6 | 7 | THESISCONTENTS=$(THESISMAIN).tex data/*.tex 8 | CLSFILES=$(PACKAGE).cls 9 | 10 | # make deletion work on Windows 11 | ifdef SystemRoot 12 | RM = del /Q 13 | else 14 | RM = rm -f 15 | endif 16 | 17 | all: thesis a3cover 18 | 19 | ###### for thesis 20 | 21 | thesis: $(THESISMAIN).pdf 22 | 23 | $(THESISMAIN).pdf: $(CLSFILES) $(THESISCONTENTS) 24 | latexmk $(LATEXMKOPTS) $(THESISMAIN) 25 | 26 | ###### for a3cover 27 | 28 | a3cover:a3cover.pdf 29 | 30 | a3cover.pdf: spine.pdf $(THESISMAIN).pdf a3cover.tex 31 | xelatex a3cover.tex 32 | 33 | spine.pdf: spine.tex 34 | xelatex spine.tex 35 | 36 | ##### clean 37 | 38 | clean: 39 | latexmk -c $(THESISMAIN) spine a3cover 40 | -@$(RM) *~ *.bbl *.exa *.xdv data/*.aux 41 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # zzuthesis 2 | 3 | 郑州大学本科毕业设计(论文)和研究生学位论文(含 硕士和博士) LaTeX 模版。 本科毕业设计(论文)和研究生学位论文(含硕士和博士) 分别根据《郑州大学材料科学与工程学院本科毕业设计(论文)基本规范》和《郑州大学学位论文写作规范格式》的规范要求制定。该模板主要完成于 2012 年上半年,在上传至 Github 前进行了部分调整,以保证正常编译运行。 4 | 5 | ## 1. 字体配置 6 | 7 | 采用 ctex 宏包中的字体配置。 8 | 9 | ## 2. 模板编译 10 | 11 | 该模板分别在 Windows 和 Linux 平台安装的 TeXLive 2019 下测试通过。 12 | 13 | ### 2.1 模板文件的生成 14 | 15 | `latexmk -xelatex main` 16 | 17 | ### 2.2 A3 封面文件的生成 18 | 19 | `xelatex spine` 20 | 21 | `xelatex a3cover` 22 | 23 | ### 2.3 自动运行脚本(Makefile) 24 | 25 | * `make all` 等于 `make thesis && make a3cover`(默认选项); 26 | * `make thesis` 生成论文 main.pdf; 27 | * `make a3cover` 生成封面 a3cover.pdf; 28 | * `make clean` 清理中间文件; 29 | -------------------------------------------------------------------------------- /a3cover.tex: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: a3cover.tex 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2012-03-02 20:25 6 | %% Last modified: 2016-08-28 21:10 7 | %%================================================ 8 | \documentclass{article} 9 | 10 | \usepackage[papersize={17.32in,11.69in}]{geometry} 11 | \usepackage{graphicx} 12 | \usepackage{pdfpages} 13 | 14 | \pagestyle{empty} 15 | 16 | \begin{document} 17 | 18 | \includepdfmerge[nup=2x1, noautoscale, delta=0 0, pages={last-last, 1}]{spine.pdf, main.pdf, 1} 19 | 20 | \end{document} 21 | -------------------------------------------------------------------------------- /data/abstract.tex: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: abstract.tex 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2012-04-24 00:21 6 | %% Last modified: 2019-11-01 09:26 7 | %%================================================ 8 | \begin{cabstract} 9 | 10 | 论文的摘要是对论文研究内容和成果的高度概括。摘要应对论文所研究的问题及其研究目 11 | 的进行描述,对研究方法和过程进行简单介绍,对研究成果和所得结论进行概括。摘要应 12 | 具有独立性和自创性,其内容应包含与论文全文同等量的主要信息。 13 | 14 | 论文摘要的书写应力求精确、简明。硕士学位论文建议1000字以内,博士学位论文建议 15 | 2000字以内。部分学生用外文撰写学位论文时,博士学位论文的摘要应不少于5000字符, 16 | 硕士应不少于2500字符。切忌写成对论文书写内容进行提要的形式,尤其要避免“第1章…… 17 | ;第2章……;……”这种或类似的陈述方式。摘要中不可出现图片、图表、表格或其他插图材 18 | 料。 19 | 20 | 关键词是为了便于做文献索引和检索工作而从论文中选取出来用以表示全文主题内容信息 21 | 的单词或术语。关键词应体现论文特色,具有语义性,在论文中有明确的出处,并应尽量 22 | 采用《汉语主题词表》或各专业主题词表提供的规范词。在摘要内容下方另起一行标明, 23 | 一般3~8个,之间用空格分开。为便于国际交流,应标注与中文对应的英文关键词。 24 | 25 | \zzuthesis{}(郑州大学学位论文模板)提供郑州大学本科毕业设计(论文)和研究生学位 26 | 论文的模板,其代码来源于清华大学学位论文模板(\textsc{ThuThesis}),并根据《郑州 27 | 大学材料科学与工程学院本科毕业设计(论文)基本规范》和《郑州大学学位论文写作规范 28 | 格式》的规范要求进行了修改,目前该模板已基本符合学校学院的相关要求。本文介绍该 29 | 模板的使用方法,并给出相关示例。 30 | 31 | 本文的创新点主要有: 32 | 33 | \begin{itemize} 34 | \item 用例子来解释模板的使用方法; 35 | \item 用废话来填充无关紧要的部分; 36 | \item 一边学习摸索一边编写新代码。 37 | \end{itemize} 38 | 39 | \textsf{模板作者声明}:关键词分隔符用半角逗号,模板会自动处理替换为《规范》中 40 | 规定的分隔符,英文关键词同理。该分隔符在 \texttt{zzuthesis.cfg} 中定义。 41 | 42 | \end{cabstract} 43 | 44 | \ckeywords{TeX/LaTeX, XeLaTeX与中文处理, 科技排版, 郑州大学, 学位论文 45 | 模板, 关于摘要} 46 | 47 | \begin{eabstract} 48 | 49 | An abstract of a dissertation is a summary and extraction of research work and 50 | contributions. Included in an abstract should be description of research topic 51 | and research objective, brief introduction to methodology and research 52 | process, and summarization of conclusion and contributions of the research. An 53 | abstract should be characterized by independence and clarity and carry 54 | identical information with the dissertation. It should be such that the 55 | general idea and major contributions of the dissertation are conveyed without 56 | reading the dissertation. 57 | 58 | An abstract should be concise and to the point. It is recommended that the 59 | abstract of master thesis be less than 1000 characters, and the doctor 60 | dissertation less than 2000 characters accordingly. For students who write 61 | their thesis in foreign languages, the abstract should be no more than 2500 \& 62 | 5000 words respectively. It is a misunderstanding to make an abstract an 63 | outline of the dissertation and words ``the first chapter'', ``the second 64 | chapter'' and the like should be avoided in the abstract. No pictures, charts, 65 | tables or illustrations are allowed in the abstract. 66 | 67 | Key words are terms used in a dissertation for indexing, reflecting core 68 | information of the dissertation. An abstract may contain 3$\sim$8 key words, 69 | with comma used in between to separate one another. In order to facilitate 70 | international exchanges, Enlish keywords should be marked on the corresponding 71 | keywords in Chinese. 72 | 73 | \end{eabstract} 74 | 75 | \ekeywords{TeX/LaTeX, XeLaTeX Chinese, Scientific typesetting system, 76 | Academic thesis template, Zhengzhou University, About keywords} 77 | -------------------------------------------------------------------------------- /data/ack.tex: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: ack.tex 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2012-01-12 18:09 6 | %% Last modified: 2016-08-28 21:05 7 | %%================================================ 8 | \begin{ack} 9 | 10 | 韶华易逝,光阴荏苒,余自入渝倏忽而又三年矣。曩者,离鲁地,弃吴越奔巴蜀,恢恢乎 11 | 若漏网之鲫,惶惶乎似惊弓之鸟,几无容身之地。幸遇刘徐二相荐,得拜于恩师魏公门下 12 | ,而今已历六秋。先生治学严谨,博通中外,蔚为家,研习学术,废寝忘食,已臻忘我之 13 | 境界。犹忆当年,乍入门墙,耻无寸功先生不以余愚钝,委以重托,是以矢勤矢勇,思惟 14 | 速战,毋负所托。然欲速不心忧如焚。全赖先生数次点拨,每自躬亲,甚于子夜,共为进 15 | 退,方有所成。于缀词成文,苦心孤诣,字斟句酌,独具匠心,深为叹服,并于耳提面命 16 | 之际益良多。先生之德才,若高山仰止,亦非庸庸如吾辈者所能望其项背。每至周常言: 17 | “修身者智之府也,爱施者仁之端也,取予者义之符也,耻辱者勇之决也立名者行之极也 18 | 。凡此五者,皆安身立命之本,不可偏废。”言之谆谆,听之诚若醍醐灌顶。退而思之, 19 | 果斯然也,大为拜服。兼之师母,待余恩厚,视若螟多得给养,感激涕零。余素朴陋,尚 20 | 无剖符丹书之功,反受此殊遇,非结草衔不可报也!今虽即辞师门,必常怀乌鸟之情,反 21 | 哺之心,诚不失其望也! 22 | 23 | 师门同侪,学强张骞,皆忠义之士,情同手足;乐至四国,许都耀琼,此良实,多蒙所助 24 | ;兰莉二姊,性行淑均,爱如姐弟。其他诸君,皆为志虑忠纯士,多有广益。区区不才, 25 | 有何德能,安得广助若此?感荷之心,亦自拳拳。实验中曾多次求教于杨(明莉)、杜( 26 | 军)二老师,受益匪浅;中心实验室(光辉)、鲜(晓红)二位老师及刘姊渝萍为实验工 27 | 作大开方便之门,谨表谢忱家中上至期颐之祖母,中至慈爱之父母、姊姊,下至始龀之甥 28 | 男,均不遗力以支持,融融亲情,曷其幸甚!谨撰此文,鱼传尺素,答报椿萱! 29 | 30 | 嗟乎!聚散无常,盛况难再;书不尽意,略陈固陋。临别赠言,幸承恩于公;登高作赋, 31 | 是所望于群贤。斗胆献拙,情之不已;一言均赋,四韵俱成。洒陵江,以酹逝去之岁月。 32 | 33 | \begin{center} 34 | 西入渝州已六霜,貔貅帐里铸鱼肠。\\ 35 | 书山文海研学术,翠袖红巾戏皮黄。\\ 36 | 莫叹时舛惟虎踞,且图运转季鹰扬。\\ 37 | 今朝叩别师尊去,一片丹心化碧江。 38 | \footnote{重庆大学化工博士季孟波学位论文《抗溺水性气体多孔电极的研究》致谢词} 39 | \end{center} 40 | 41 | \end{ack} 42 | -------------------------------------------------------------------------------- /data/app01.tex: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: app01.tex 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2012-04-25 15:16 6 | %% Last modified: 2019-11-07 12:55 7 | %%================================================ 8 | \chapter{表格附件} 9 | % 替换相应表格即可 10 | 11 | \section*{毕业设计(论文)任务书} 12 | \addcontentsline{toc}{section}{附表~1:毕业设计(论文)任务书} 13 | 14 | \clearpage 15 | \section*{郑州大学毕业论文开题报告表} 16 | \addcontentsline{toc}{section}{附表~2:郑州大学毕业论文开题报告表} 17 | 18 | \clearpage 19 | \section*{毕业设计(论文)计划进程表} 20 | \addcontentsline{toc}{section}{附表~3:毕业设计(论文)计划进程表} 21 | 22 | \clearpage 23 | \section*{郑州大学毕业设计中期检查表} 24 | \addcontentsline{toc}{section}{附表~4:郑州大学毕业设计中期检查表} 25 | 26 | \clearpage 27 | \section*{毕业设计(论文)成绩评定表} 28 | \addcontentsline{toc}{section}{附表~5:毕业设计(论文)成绩评定表} -------------------------------------------------------------------------------- /data/app02.tex: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: app02.tex 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2012-05-04 18:51 6 | %% Last modified: 2016-08-28 21:06 7 | %%================================================ 8 | \chapter{\sl The Name of the Game} 9 | 10 | English words like `technology' stem from a Greek root beginning with 11 | the letters $\tau\epsilon\chi\ldots\,$; and this same Greek word means {\sl 12 | art\/} as well as technology. Hence the name \TeX, which is an 13 | uppercase form of $\tau\epsilon\chi$. 14 | 15 | Insiders pronounce the $\chi$ of \TeX\ as a Greek chi, not as an `x', so that 16 | \TeX\ rhymes with the word blecchhh. It's the `ch' sound in Scottish words 17 | like {\sl loch\/} or German words like {\sl ach\/}; it's a Spanish `j' and a 18 | Russian `kh'. When you say it correctly to your computer, the terminal 19 | may become slightly moist. 20 | 21 | The purpose of this pronunciation exercise is to remind you that \TeX\ is 22 | primarily concerned with high-quality technical manuscripts: Its emphasis is 23 | on art and technology, as in the underlying Greek word. If you merely want 24 | to produce a passably good document---something acceptable and basically 25 | readable but not really beautiful---a simpler system will usually suffice. 26 | With \TeX\ the goal is to produce the {\sl finest\/} quality; this requires 27 | more attention to detail, but you will not find it much harder to go the 28 | extra distance, and you'll be able to take special pride in the finished 29 | product. 30 | 31 | On the other hand, it's important to notice another thing about \TeX's name: 32 | The `E' is out of kilter. This 33 | displaced `E' is a reminder that \TeX\ is about typesetting, and it 34 | distinguishes \TeX\ from other system names. In fact, TEX (pronounced 35 | {\sl tecks\/}) is the admirable {\sl Text EXecutive\/} processor developed by 36 | Honeywell Information Systems. Since these two system names are 37 | pronounced quite differently, they should also be spelled differently. The 38 | correct way to refer to \TeX\ in a computer file, or when using some other 39 | medium that doesn't allow lowering of the `E', is to type `TeX'. Then 40 | there will be no confusion with similar names, and people will be 41 | primed to pronounce everything properly. 42 | 43 | \section*{References} 44 | \noindent{\itshape NOTE: these references are only for demonstration, they are 45 | not real citations in the original text.} 46 | 47 | \begin{enumerate}[{$[$}1{$]$}] 48 | \item Donald E. Knuth. The \TeX book. Addison-Wesley, 1984. ISBN: 0-201-13448-9 49 | \item Paul W. Abrahams, Karl Berry and Kathryn A. Hargreaves. \TeX\ for the 50 | Impatient. Addison-Wesley, 1990. ISBN: 0-201-51375-7 51 | \item David Salomon. The advanced \TeX book. New York : Springer, 1995. ISBN:0-387-94556-3 52 | \end{enumerate} 53 | -------------------------------------------------------------------------------- /data/app03.tex: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: app03.tex 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2012-05-04 18:51 6 | %% Last modified: 2016-08-28 21:07 7 | %%================================================ 8 | \chapter{此名有诗意} 9 | 10 | 英语单词“technology”来源于以字母$\tau\epsilon\chi$……开头的希腊词根; 11 | 并且这个希腊单词除了technology的意思外也有art的意思。因此,名称\TeX{}是 12 | $\tau\epsilon\chi$的大写格式。 13 | 14 | 在发音时,\TeX{}的$\chi$发音与希腊的chi一样, 而不是“x”,所以\TeX{}与blecchhh押 15 | 韵。“ch”听起来象苏格兰单词中的loch或者德语单词中的ach;它在西班牙语中是“j”, 16 | 在俄语中是“kh”。当你对着计算机正确读出时,终端屏幕上可能有点雾。 17 | 18 | 这个发音练习是提醒你,\TeX{}主要处理的是高质量的专业书稿:它的重点在艺术和专 19 | 业方面, 就象希腊单词的含义一样。如果你仅仅想得到一个过得去——可读下去但不那么 20 | 漂亮——的文书,那么简单的系统一般就够用了。使用\TeX{}的目的是得到最好的质量; 21 | 这就要在细节上花功夫,但是你不会认为它难到哪里去, 并且你会为所完成的作品感到 22 | 特别骄傲。 23 | 24 | 另一方面重要的是要注意到与\TeX{}名称有关的另一件事:“E”是错位的。这个偏移“E” 25 | 的标识提醒人们,\TeX{}与排版有关,并且把\TeX{}从其它系统的名称区别开来。实际 26 | 上,TEX(读音为tecks)是Honeywell Information Systems 的极好的Text EXecutive处 27 | 理器。因为这两个系统的名称读音差别很大,所以它们的拼写也不同。在计算机中表明 28 | \TeX{}文件的正确方法,或者当所用的方式无法降低“E”时,就要写作“TeX”。这样,就 29 | 与类似的名称不会产生混淆,并且为人们可以x正确发音提供了条件。 30 | -------------------------------------------------------------------------------- /data/chap01.tex: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: chap01.tex 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2012-04-27 15:05 6 | %% Last modified: 2016-08-28 21:07 7 | %%================================================ 8 | \chapter{\TeX/\LaTeX{}系统概述} 9 | \label{cha:overview} 10 | 11 | \TeX{}\footnote{\TeX{}的名称是由三个大写的希腊字母ΤЄΧ组成,在希腊语中这个词是“ 12 | 科学”和“艺术”的意思。为了方便的缘故,一般都写成“TeX”,念做“teck”。}是一个格式 13 | 化排版系统,它一问世便以其排版效果的高质量震动整个出版界。尤其是在排版含有大量 14 | 数学公式的科技文献方面更显示了它的优越性。\TeX{}还是一个程序源代码公开的免费排 15 | 版系统,因此吸引了许多计算机专家及\TeX{}爱好者为之添砖加瓦。 16 | 17 | \TeX{}不仅是一个排版程序,而且是一种程序语言。\LaTeX{}\footnote{\LaTeX{}的读法 18 | 应为“lay--teck”,念成“lay--tecks”也可以。}就是使用这种语言写成的一个“\TeX{}宏 19 | 包”,它扩展了\TeX{}的功能,使我们很方便地进行富于逻辑性的创作而不是专心于字体 20 | 、缩进等这些烦人的东西。 21 | 22 | \TeX{}是\LaTeX{}的基石,\LaTeX{}建立在\TeX{}之上;各种宏包和类型文件是\LaTeX{} 23 | 大厦的装饰材料。\LaTeX{}是特殊版本的\TeX{},并且加进了很多新功能,使得使用者可 24 | 以更为方便的利用\TeX{}的强大功能。使用\LaTeX{}基本上不需要使用者自己设计命令和 25 | 宏等,因为\LaTeX{}已经替你做好了。因此,即使使用者并不是很了解\TeX{},也可以在 26 | 很短的时间内制成高质量的文件。对于排版复杂的数学公式,\LaTeX{}表现的更为出色。 27 | 28 | \LaTeX{}与Word是两种不同类型的文本编辑处理系统,各有所长,如果要对文字编辑性能 29 | 和使用便捷程度等作综合评比,Word明显优于\LaTeX{},仅“所见即所得”一项,Word就会 30 | 赢得绝大多数用户,但要仅限定在学术报告和科技论文方面,评比结果就不同了: 31 | 32 | \section*{从头开始} 33 | 34 | Word特点就是“所见即所得”,其基本功能初学者很容易掌握,很多Word用户都是无师自通 35 | 。但随着篇幅和复杂程度的增加,花费在文稿格式上的精力和时间要明显加大。因为创建 36 | 自定义编号、交叉引用、索引和参考文献等就不是“所见即所得”了,得耐着性子反复查阅 37 | Word的在线帮助或借助相关软件帮忙。 38 | 39 | 对于\LaTeX{}初学者,即就是编排很简单的文章,也要花较多的精力和时间去学习那些枯 40 | 燥的命令和语法,特别是排写数学公式,经常出错,多次编译不能通过,使很多初学者望 41 | 而却步。可是一旦掌握,不论文稿长短和复杂与否都会熟练迅速地完成,先前学习 42 | \LaTeX{}的精力投入将由此得到回报。 43 | 44 | \section*{内容与样式} 45 | 46 | 当用Word写作时,要花很多精力对页版式、章节样式、字体属性、对齐和行距等文本参数 47 | 进行反复选择对比,尤其是长篇文章,经常出现因疏忽而前后文体格式不一致的现象;当 48 | 在稿件中插入或删除一章或章节次序调整时,各章节标题、图表和公式等的编号都要用手 49 | 工作相应修改,稍有不慎就会出现重号或跳号。你既是作者又是编辑还兼排字工。 50 | 51 | 使用\LaTeX{}编版,如无特殊要求,只要将文稿的类型(article、report或book等)告 52 | 诉\LaTeX{},就可专心致志地写文章了,至于文稿样式的各种细节都由\LaTeX{}统一规划 53 | 设置,而且非常周到细致;当修改稿件时,其中的章节、图表和公式等的位置都可任意调 54 | 整,无须考虑编号,因为在源文件里就没有编号,文件中的所有编号都是在最后编译时 55 | \LaTeX{}自动统一添加的,所以绝对不会出错。 56 | 57 | 换句话说,Word把文稿的内容与样式混为一体,而\LaTeX{}将它们分离,作者只需专注于 58 | 文稿的内容,而文稿的样式几乎不用过问,\LaTeX{}是你的聪明而忠诚的文字秘书,如有 59 | 特殊要求,也可使用命令修改,\LaTeX{}会自动将相关设置更新,无一遗漏。 60 | 61 | 接受\LaTeX{}稿件的出版社大都有自己的文稿样式模板,主要就是一个类型文件包,简称 62 | 类包。如果稿件未被甲出版社采用,在转投乙出版社前,只需将稿件第一句中类包名称由 63 | 甲出版社的改为乙出版社的,整篇稿件的样式就随之自动转换过来了。就一句话的事儿, 64 | 简单的不能再简单了,然而因为“体制”的原故,Word却根本无法做到这一点。 65 | 66 | \section*{数学公式} 67 | 68 | Word有个公式编辑器,可以编辑普通数学公式,但使用很不方便,外观效果较差,也不能 69 | 自动编号,尤其是很难作为文本的一部分,融入某一行中,大都专起一行。如果碰到复杂 70 | 的数学公式,编辑起来就很困难。有些用户只好另外安装可嵌入Word环境的工具软件 71 | Math-Type来弥补这一不足。 72 | 73 | \LaTeX{}的特长之一就是数学公式编辑,方法简单直观,“所想即所得”,公式的外观精致 74 | 细腻,而且公式越复杂这一优点就越明显。普通单行公式可以像纯文字文本一样插入字里 75 | 行间。尽管在默认状态下,就能将数学公式编排的非常精致美观,\LaTeX{}仍然还提供了 76 | 很多调节命令,可以对公式的外观作更加细微的调整,使其尽善尽美。 77 | 78 | \section*{插图} 79 | 80 | Word有个绘图工具,简易直观,但功能有限效果不佳。论文中的复杂图形大都用功能强大 81 | 的Visio、Photoshop等绘图软件绘制,然后插入Word。 82 | 83 | \LaTeX{}自身也具有简单的绘图功能,如调用各种绘图宏包,可画出非常复杂的图形,缺 84 | 点是不直观,命令格式繁琐,不易熟练掌握,名曰画图,实为编程。可同样先使用Visio 85 | 绘图,然后粘贴到Adobe Illustrator,对图形的细节作进一步处理后,存储为PDF或EPS 86 | 格式,最后用插图命令调入\LaTeX{}源文件即可,其效果更为精致。 87 | 88 | \section*{创建参考文献} 89 | 90 | Word目前还不具备管理参考文献的功能,用户一般都是采用Reference Manager或是 91 | NoteExpress等外部工具软件来解决这一问题。 92 | 93 | 创建参考文献可是\LaTeX{}的强项。\LaTeX{}自带一个辅助程序\BibTeX{},它可以根据 94 | 作者的检索要求,搜索一个或多个文献数据库,然后自动为文稿创建所需的参考文献条目 95 | 列表。如果编写其它文件用到相同的参考文献时可直接引用这个数据库。参考文献的样式 96 | 和排序方式都可以自行设定。 97 | 98 | 很多著名的科技刊物出版社、学术组织和TUG网站等都提供相关的\BibTeX{}文献数据库文 99 | 件,可免费下载。 100 | 101 | \section*{显示与输出} 102 | 103 | 在文本对齐、字体变换、拼写检查、单词间距控制、自动断词和自动换行等纯文字处理功 104 | 能方面,Word经多次升级后已与\LaTeX{}相差无几,但是排版效果却有所不同。以Times 105 | 字体为例,在Word中“Ta”和“PA”两个字母的间距有些松散。\LaTeX{}将各种拼写组合时的 106 | 字母间距进一步优化调整,松紧得当,使整个文本的排版效果更加工整匀称。 107 | 108 | 在换行时,\LaTeX{}不仅可以根据音节自动断词,也可以按照作者的要求进行设定断词, 109 | 一个单词可以设定多种断词方式,特别适用于科技论文中反复出现的专业词汇或缩略写, 110 | 这既能保持单词间距均匀,又不易产生误解。 111 | 112 | 在科技著作手稿中经常可以看到某些论述附有说明、出处或考证;或者某些段落划上黑杠 113 | 以示删除;或在边空里写有准备补充的文字。在\LaTeX{}源文件中使用注释标记可以将上 114 | 述这些内容完整地保留下来,以备后用,而在编译后的PDF文件中还看不到这些内容。科 115 | 研论文要经过反复推敲,多次修改,注释功能非常实用。“所见即所得”的Word,当然没有 116 | 这个功能,它删除的内容就甭想再找回来了。 117 | 118 | 一篇论文,Word新手与牛人的排版美观程度差别很大,“所见即所得”成了一大缺点,因为 119 | Word本身不能帮助作者美化作品,自己排成什么样就什么样,即:“所得仅所见”,就像在 120 | 白纸上作画,全凭个人的悟性与灵感。而\LaTeX{}初学与专家的排版外观差别很小,仅是 121 | 快慢不同,都能达到专业出版水平,这就是\LaTeX{}的一大优点,只要想法一致就能得到 122 | 相同的结果,也就是“所想即所得”。 123 | 124 | 目前PDF格式已成为全世界各种组织机构用来进行更加安全可靠的电子文件分发和交换的 125 | 出版规范,科技论文大都使用PDF格式。\LaTeX{}可以直接输出PDF、PS或DVI格式文件; 126 | 而Word输出的是DOC格式文件,还须将DOC转换为PDF;另外,图形中的数学公式或文本中 127 | 数学式的上下标,在转换后常出现位置偏移字形变大等问题。 128 | 129 | \section*{可扩充性} 130 | 131 | 用户可以像搭积木那样对\LaTeX{}进行功能扩充或添加新的功能。例如,加载一个CJK宏 132 | 包,就可以处理中文,调用eucal宏包可将数学公式中的字符改为欧拉书写体;如果对某 133 | 个宏包效果不太满意,完全可以打开来修改,甚至照葫芦画瓢自己写一个。这些可附加的 134 | 宏包文件绝大多数都可从CTAN等网站无偿下载。 135 | 136 | 因为设计的超前性,\TeX{}/\LaTeX{}程序系统几十年来没有什么改动,而且由于它的可 137 | 扩充性,\LaTeX{}将永葆其先进性,也就是说,学习和使用\LaTeX{}永远不会过时。例如 138 | ,通过调用相关扩展宏包,\LaTeX{}立刻就具备了排版高质量高专业水准象棋谱、五线谱 139 | 或化学分子式的能力。对于\LaTeX{}这种机动灵活、简便免费的可扩充性能,Word只能望 140 | 尘。 141 | 142 | \section*{稳定性和安全性} 143 | 144 | 一篇科技论文少则几十页,多则上百页,其中含有许多图形和公式(Word将公式处理为图 145 | 形),正是由于Word“所见即所得”,论文中的图形都要完整地插入页面。随着文件的篇幅 146 | 增大图形数量增多,处理速度明显减慢。编写一篇论文要无数次地打开、保存和关闭,往 147 | 往要长时间等待甚至死机或文稿无法打开,所以Word经常出现“文件恢复”提示信息,但其 148 | 中的图形很有可能丢失,取而代之的是一个小红叉。如果将文件分解为多个子文件,可以 149 | 缓解这一问题,但又会出现难以自动创建目录、索引和参考文献等新问题;若章节、图表 150 | 和公式需要在子文件之间调换调整,那编号就全乱套了。 151 | 152 | \LaTeX{}是纯文本文件,所有图形都是在最后编译时调入。同一篇文章,其\LaTeX{}源文 153 | 件只有Word文件尺寸的几十分之一。所以,\LaTeX{}源文件的长短,不会对文件存取和编 154 | 辑过程产生明显影响。\LaTeX{}也允许采用多个子文件,章节和图表可随意增删, 155 | \LaTeX{}是在最后编译时才将所有子文件汇总排序,生成统一的文件页码、标题序号、图 156 | 表和公式编号以及各种目录。 157 | 158 | Word从问世到现在不断地更新版本,并经常要求下载补丁程序,防止病毒攻击。\LaTeX{} 159 | 及其前身\TeX{},近二十年来,没有发现系统漏洞,即使有,造成源文件损坏的风险也是 160 | 微乎其微;迄今也未发现任何宏包含有病毒。 161 | 162 | \section*{版本兼容性} 163 | 164 | Word十几年里已有多种版本,只能向下兼容,旧文件在新版本中打开,经常出现字形和文 165 | 本位置变动等问题。 166 | 167 | 二十年来\LaTeX{}也有几种版本,但可相互兼容,旧文件在新版本中打开,文本不会有丝 168 | 毫的变形,而且还可以继续追加新的功能,如这几年很流行的超文本链接和PDF书签等。 169 | 170 | \section*{通用性} 171 | 172 | 随着计算机软硬件性能的提高,在PC机上使用Unix/Linux、MacOS或其他操作系统的用户 173 | 越来越多。由于\LaTeX{}系统的程序源代码是公开的,因此人们开发了用于各种操作系统 174 | 的版本,而且\LaTeX{}源文件全部采用国际通行的ASCII字符,所以\LaTeX{}及其源文件 175 | 可以毫无阻碍地跨平台、跨系统使用和传播。 176 | 177 | 而Word只能在Windows操作系统上运行。 178 | 179 | 高德纳教授曾说过:TeX排版系统追求的首要目标就是高品质,文件的排印效果不只是很 180 | 好,而是要最好。\LaTeX{}就是专门为排版高质量科技论文而设计的软件,当然在这方面 181 | 的性能就非常突出。在很多\LaTeX{}爱好者看来,\LaTeX{}不仅是一种文字编辑排版工具 182 | ,它更是一门艺术,给人以美的享受。然而,追求完美是要付出一定代价的,是否值得, 183 | 那得您说了算! 184 | 185 | -------------------------------------------------------------------------------- /data/chap02.tex: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: chap02.tex 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2012-04-27 19:37 6 | %% Last modified: 2019-11-05 23:57 7 | %%================================================ 8 | \chapter{模板简介及安装} 9 | \label{cha:introduction} 10 | 11 | \zzuthesis(\textbf{Z}heng\textbf{z}hou \textbf{U}niversity \textbf{Thesis})以 12 | ctexbook文档类为基础,根据清华大学学位论文模板修改而来。本科毕业设计(论文) 13 | 和研究生学位论文(含硕士和博士)分别根据《郑州大学材料科学与工程学院本科毕业 14 | 设计(论文)基本规范》和《郑州大学学位论文写作规范格式》的规范要求定制,目前 15 | 该模板已基本符合相关《规范》的要求。 16 | 17 | \textsf{模板作者声明:}该模板非学校官方模板,不能保证满足《规范》所有要求,遇到问题请及时反馈。 18 | 19 | \section{模板简介} 20 | \label{sec:intro} 21 | 22 | 下表列出了 \zzuthesis{} 的主要文件及其功能介绍。模板核心文件只有两个:\texttt{zzuthesis.cls} 和 \texttt{zzubib.bst}。其中 \texttt{zzuthesis.cls} 文件定义了模版所需要的命令,\texttt{zzubib.bst} 文件则定义了参考文献的风格。由于学校规范中对参考文献风格的规定较为模糊,建议直接采用最新的国家标准《信息与文献参考文献著录规则》(\emph{GB/T 7714-2015}) 中规定的参考文献格式,对该问题的讨论见 https://github.com/tuxify/zzuthesis/issues/2。 23 | 24 | \begin{longtable}{lp{8cm}} 25 | \toprule 26 | {\heiti 文件(夹)} & {\heiti 功能描述}\\\midrule 27 | \endfirsthead 28 | \midrule 29 | {\heiti 文件(夹)} & {\heiti 功能描述}\\\midrule 30 | \endhead 31 | \endfoot 32 | \endlastfoot 33 | zzuthesis.cls & 模板类文件\\ 34 | zzubib.bst & 参考文献样式文件\\ 35 | docutils.sty & 模板示例文档用到的宏包及定义\\ 36 | main.tex & 示例文档主文件\\ 37 | spine.tex & 书脊示例文档\\ 38 | a3cover.tex & A3封面示例文档\\ 39 | ref/ & 示例文档参考文献目录\\ 40 | data/ & 示例文档章节具体内容\\ 41 | figures/ & 示例文档图片路径\\ 42 | Makefile & Linux 自动编译工具\\ 43 | \bottomrule 44 | \end{longtable} 45 | 46 | \section{模板下载及安装} 47 | 48 | 该模板可以通过浏览器下载\textbf{发布版本},或者通过 git 命令下载\textbf{开发版本}。下载后进入模板主目录即可编译生成示例文档,模板在 \TeXLive{} 2019 下编译通过,建议采用最新版本的 \TeXLive{} 软件发行套装\footnote{软件的安装参见:\url{http://tug.org/texlive/acquire.html}}。 49 | \begin{itemize} 50 | \item 浏览器下载: 51 | \href{https://github.com/tuxify/zzuthesis/releases}{Releases} 52 | \item git 命令: 53 | \texttt{git clone https://github.com/tuxify/zzuthesis.git} 54 | \end{itemize} 55 | 56 | \section{模板编译运行} 57 | 58 | 模板中示例文档的生成可以采用多种方法,手动运行需要多次运行命令,直到不再出现警告为止,具体步骤如下: 59 | \begin{shell} 60 | # 1. 发现引用关系,文件后缀 .tex 可以省略 61 | $ xelatex main 62 | # 2. 编译参考文件源文件,生成 bbl 文件 63 | $ bibtex main 64 | # 3. 解决引用 65 | $ xelatex main 66 | $ xelatex main # 此时生成完整的 PDF 文件 67 | \end{shell} 68 | 69 | 采用 latexmk 命令可以支持全自动生成文档,会自动运行多次工具直到交叉引用都被解决。 70 | 下面给出了一个用 latexmk 调用 \XeLaTeX{} 生成最终文档的示例: 71 | \begin{shell} 72 | # 一句命令即可生成完整 PDF 文件 73 | $ latexmk -xelatex main 74 | \end{shell} 75 | 76 | 在Linux平台还可以使用 \emph{Makefile} 文件,在本模板中,该文件实质上也是调用了 latexmk 命令。 77 | \begin{shell} 78 | $ make # 生成示例文档、书脊及 A3 封面 79 | $ make thesis # 生成示例文档 80 | $ make a3cover # 生成 A3 封面 81 | $ make clean # 清除临时文件 82 | \end{shell} 83 | 84 | 此外,习惯用 Visual Studio Code 编辑器的还可以借助 LaTeX Workshop 插件,实现自动化编译运行,具体设置可参考网上相关教程。 -------------------------------------------------------------------------------- /data/chap03.tex: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: chap03.tex 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2012-04-27 19:47 6 | %% Last modified: 2019-11-07 14:38 7 | %%================================================ 8 | \chapter{关于该模板的使用} 9 | \label{cha:usage} 10 | 11 | 模板中定义了一系列的命令与环境来实现论文的排版,其主要分为格式控制和内容替换两类,格式控制如字体、字号、字距和行距等,内容替换如姓名、院系、专业、致谢等等。模板自带的示例文档里面基本涵盖了论文写作用到的所有命令和环境的使用方法,只需要用自己的内容进行相应替换就可以。本章将会对模板中的命令及其使用作一简要介绍。 12 | 13 | \section{\zzuthesis{} 示例文件} 14 | 15 | 下面的例子描述了模板中章节的组织形式,来自于示例文档,具体内容可以参考模板附 16 | 带的 \emph{main.tex} 和 \emph{data}\//。 17 | 18 | \lstinputlisting[firstline=8,style=lstStyleLaTeX]{main.tex} 19 | 20 | \section{模板选项} 21 | \label{sec:option} 22 | 23 | \begin{latex} 24 | \documentclass[bachelor]{zzuthesis}| 25 | \end{latex} 26 | 27 | 论文类型是模板的必选项,在使用该文档类时,必须指定论文类型。其中 \textbf{bachelor}、\textbf{master}、\textbf{doctor} 分别代表本科毕业设计论文、硕士研究生学位论文、博士研究生学位论文。除了必选项之外,\emph{zzuthesis.cls} 中载入ctexbook类时默认选项有:\texttt{zihao=-4},\texttt{a4paper},\texttt{UTF8} 和 \texttt{scheme=plain}。当指定必选项为\textbf{doctor} 选项时,默认载入 \textbf{openright} 选项,此时文档章节出现在奇数页,适合双面打印;指定 \textbf{bachelor} 或 \textbf{master} 选项时,默认载入 \textbf{openany} 选项,用于单面打印。如果需要更改,则需要修改 \emph{zzuthesis.cls} 的定义。 28 | 29 | 示例文档 \emph{main.tex} 导言区还定义了图形文件的搜索路径,即命令 30 | \begin{latex} 31 | \graphicspath{} 32 | \end{latex} 33 | 在模板 \emph{.cls} 文档中,命令 34 | \begin{latex} 35 | \DeclareGraphicsExtensions{.pdf,.eps,.png,.jpg,.jpeg}| 36 | \end{latex} 37 | 定义了搜索图形文件的扩展名。 38 | 39 | 此外,由于本科论文与研究生论文要求内容及排布次序不同,为了尽量减少更改文档类型 40 | 时需要修改的选项,示例文档 \emph{main.tex} 中用到了 41 | \begin{latex} 42 | \ifzzu@bachelor 43 | \end{latex} 44 | 等条件判断命令,以自动控制内容的显示及插入次序。由于该命令中含有@字符, 45 | 故在使用该命令前需要先用命令 46 | \begin{latex} 47 | \makeatletter 48 | \end{latex} 49 | 之后还要用 50 | \begin{latex} 51 | \makeatother 52 | \end{latex} 53 | 恢复其定义。事实上,完全可以删除这些不必要的内容。 54 | 55 | \section{基本控制命令} 56 | 57 | \subsection*{字体} 58 | 59 | 模板采用 ctex 宏包中定义的字体命令对字体进行控制,比如 60 | \begin{latex} 61 | \songti % 宋体 62 | \fangsong % 仿宋 63 | \kaishu % 楷书 64 | \heiti % 黑体 65 | \end{latex} 66 | 具体可参考相应文档。 67 | 68 | \subsection*{字号} 69 | 70 | \verb|\chuhao| 等命令定义了一组字体大小,分别为: 71 | 72 | \begin{center} 73 | \begin{tabular}{lllll} 74 | \hline 75 | \verb|\chuhao|&\verb|\xiaochu|&\verb|\yihao|&\verb|\xiaoyi|&\\ 76 | \verb|\erhao|&\verb|\xiaoer|&\verb|\sanhao|&\verb|\xiaosan|&\\ 77 | \verb|\sihao|&\verb|\banxiaosi|&\verb|\xiaosi|&\verb|\wuhao|&\verb|\xiaowu|\\ 78 | \verb|\liuhao|&\verb|\xiaoliu|&\verb|\qihao|&\verb|\bahao|&\\\hline 79 | \end{tabular} 80 | \end{center} 81 | 82 | 使用方法为: 83 | \begin{latex} 84 | \command[] 85 | \end{latex} 86 | 其中 \texttt{command} 为字号命令, 87 | \texttt{num} 为行距。比如 88 | \begin{latex} 89 | \xiaosi[1.5] 90 | \end{latex} 91 | 表示选择小四字体,行距 1.5 倍。 92 | 93 | \subsection*{其它命令} 94 | 95 | 以下命令是为了模板示例文档而定义的,一般不会用到: 96 | \begin{latex} 97 | \TeXLive % TeXLive 发行版名称。 98 | \zzuthesis % 模板名称 99 | \version % 模板版本号 100 | \end{latex} 101 | 102 | \section{封面及版权声明、摘要} 103 | \label{sec:cover} 104 | 105 | \subsection*{封面} 106 | 107 | 封面格式已经在模板中定义,只需填入相应信息即可。 108 | \begin{itemize} 109 | \item 本科毕业设计论文: 110 | \begin{itemize} 111 | \item 中文标题 \verb|\ctitle{}| 112 | \item 英文标题 \verb|\etitle{<title>}| 113 | \item 指导老师 \verb|\csupervisor{<name>}| 114 | \item 职称 \verb|\protitle{<title>}| 115 | \item 学生姓名 \verb|\cauthor{<name>}| 116 | \item 学号 \verb|\stuno{<number>}| 117 | \item 专业 \verb|\cmajor{<major>}| 118 | \item 院系 \verb|\cdepartment{<department>}| 119 | \item 完成时间 \verb|\cdate{<date>}| 120 | \item 提交时间 \verb|\submitdate{<date>}| 121 | \end{itemize} 122 | \item 硕士学位论文: 123 | \begin{itemize} 124 | \item 学校代码 \verb|\schoolcode{<number>}| 125 | \item 学号或申请号 \verb|\id{<number>}| 126 | \item 密级 \verb|\secretlevel{<level>}| 127 | \item 中文标题 \verb|\ctitle{<title>}| 128 | \item 作者姓名 \verb|\cauthor{<name>}| 129 | \item 导师姓名 \verb|\csupervisor{<name>}| 130 | \item 职称 \verb|\protitle{<title>}| 131 | \item 学科门类 \verb|\csubject{<subject>}| 132 | \item 专业名称 \verb|\cmajor{<major>}| 133 | \item 培养院系 \verb|\cdepartment{<department>}| 134 | \item 完成时间 \verb|\cdate{<date>}| 135 | \end{itemize} 136 | \item 博士学位论文需要填入的信息无“培养院系”命令,其它与硕士相同。 137 | \item 硕士与博士学位论文英文封面需填入的信息相同,均为: 138 | \begin{itemize} 139 | \item 英文题目 \verb|\ctitle{<title>}| 140 | \item 作者 \verb|\eauthor{<name>}| 141 | \item 导师 \verb|\esupervisor{<name>}| 142 | \item 专业 \verb|\emajor{<major>}| 143 | \item 院系 \verb|\edepartment{<department>}|\footnote{《规范》中仅提供一个英文封面,博士似乎不应有此项信息。 144 | } 145 | \item 时间 \verb|\edate{<date>}|。 146 | \end{itemize} 147 | \end{itemize} 148 | 以上信息及相应命令在 \emph{data/cover.tex} 均有示例,使用时一般也应在该文件中 149 | 修改。其中,模板默认本科论文中提交时间为当前日期,研究生论文中完成时间也默认为 150 | 当前日期,其它命令默认为空。 151 | 152 | 版权声明在 \emph{zzuthesis.cls} 中定义,内容及格式已固定,一般不需要修改,也 153 | 没有需要填入的信息。 154 | 155 | \subsection*{摘要} 156 | 157 | \begin{latex} 158 | \begin{cabstract} 159 | 摘要请写在这里... 160 | \end{cabstract} 161 | \begin{eabstract} 162 | here comes English abstract... 163 | \end{eabstract} 164 | \end{latex} 165 | 166 | 摘要标题的定义用命令: 167 | \begin{latex} 168 | \zzu@chapter*[tocline]{title}[header] 169 | \end{latex} 170 | 该命令通过两个可选项\texttt{tocline} 和 \texttt{header} ,可以控制标题是否在目 171 | 录或者页眉中出现,非常强大。该模板中目录、图和附表清单、参考文献、符号说明、致 172 | 谢、附录、个人简历等标题的定义均用到了该命令。 173 | 174 | \subsection*{关键词} 175 | 176 | 关键词用英文逗号分割写入相应的命令中,模板会解析各关键词并生成符合不同论文格式 177 | 要求的关键词格式。 178 | \begin{latex} 179 | \ckeywords{关键词 1, 关键词 2} 180 | \ekeywords{keyword 1, key word 2} 181 | \end{latex} 182 | 183 | \section{正文章节} 184 | \label{sec:mainbody} 185 | 186 | 论文各章节标题的格式通过ctex宏包中的ctexset命令实现 187 | \begin{latex} 188 | \ctexset{ 189 | chapter={<format>}, 190 | section={<format>}, 191 | subsection={<format>}, 192 | subsubsection={<format>} 193 | } 194 | \end{latex} 195 | 196 | 论文正文部分字号与行距的定义通过对文档类中 \verb|\normalsize| 命令修改而得到; 197 | 其中本科论文要求行距为1.25倍,但由于\LaTeX{}中行距的定义与Word中存在区别,\LaTeX{}行 198 | 距设置为1.25倍时略嫌小,采取与研究生论文同样的固定20磅行距时较为接近。 199 | 200 | \section{参考文献} 201 | \label{sec:bib} 202 | 203 | 关于参考文献模板推荐使用\BibTeX{},文献库采用 \emph{bib} 格式 204 | 的文献引用信息,通常的文献管理软件均能比较方便的导出该格式的文件。 205 | 206 | 模板中使用命令 \verb|\cite{}| 表示上标标注,并另外定义了 \verb|\onlinecite{}| 207 | 命令,作为形文中的参考文献标注。 208 | 209 | 下面是示例: 210 | 211 | 上标引用 \cite{chen2001,nadkarni1992,hua1973,zhu1973,huo1981,timoshenko1959,zhang1991,dupont1974,ding2001,cairns1965,patent,standard,wang2005}。 212 | 213 | 有时候不想要上标,那么可以这样 \onlinecite{chen2001}。如果有不如意的地方,请手动修改\emph{bbl} 文件。 214 | 215 | \section{其它部分} 216 | \label{sec:otherparts} 217 | 218 | \subsection*{符号对照表} 219 | 220 | 简单定义的一个 list,跟 description 非常类似,使用方法参见示例文件。带一个可选 221 | 参数,用来指定符号列的宽度(默认为 $2.5\,\mathrm{cm}$)。 222 | \begin{latex} 223 | \begin{denotation}[1.5cm] 224 | \item[E] 能量 225 | \item[m] 质量 226 | \item[c] 光速 227 | \end{denotation} 228 | \end{latex} 229 | 230 | \subsection*{目录、图和附表清单} 231 | 232 | 模板中章节编号深度 \texttt{secnumdepth} 定义为3,即四级编号;目录深度 233 | \texttt{tocdepth} 定义为2,即目录中显示三级标题。在 \emph{main.tex} 文件中使用 234 | 命令 235 | \begin{latex} 236 | \tableofcontents 237 | \end{latex} 238 | 可以生成目录。 239 | 240 | 模板将插图和附表清单分开,使用命令 241 | \begin{latex} 242 | \listoffigures 243 | \listoftables 244 | \end{latex} 245 | 可以分别生成插图清单和表格清单,将其插入到期望的位置即可。 246 | 247 | 目录和插图及附表清单标题的格式分别通过重新定义上述三个命令实现;目录和清单条目格式的定义均是利用 \textbf{titletoc} 宏包中的 248 | \begin{latex} 249 | \titlecontents{<section>}[<left>]{<above>} 250 | {<before with label>}{<before without label>} 251 | {<filter and page>}[<after>] 252 | \end{latex} 253 | 命令。 254 | 255 | 需要注意的是,由于本科论文不要求插图和附表清单,故在重新定义相应命令时将其定义为空命令,从而避免本科论文显示插图和附表清单。 256 | 257 | \subsection*{简历} 258 | 259 | 新定义的环境 \texttt{resume},其中可以包含子标题,如发表的学术论文等,用 260 | \begin{latex} 261 | \resumeitem{} 262 | \end{latex} 263 | 命令即可,例子在示例文档 \emph{data/resume.tex}。 264 | 265 | \subsection*{附录} 266 | 267 | 附录会更改默认的 \texttt{chapter} 属性,故所有附录均插入到 \texttt{appendix} 环境中,避免影响后 268 | 文内容。 269 | \begin{latex} 270 | \begin{appendix} 271 | \input{data/app01} 272 | \input{data/app02} 273 | \end{appendix} 274 | \end{latex} 275 | 276 | \subsection*{致谢} 277 | 278 | 用法跟摘要、简历等类似,没什么可说的,看示例:\emph{data/ack.tex}。 279 | 280 | \subsection*{注释及文中数量符号} 281 | 282 | 文中注释采用脚注,命令为 283 | \begin{latex} 284 | \footnote{} 285 | \end{latex} 286 | 显示格式为\LaTeX{}默认,仅修改了脚注字体大小及行距,通过对命令 287 | \begin{latex} 288 | \footnotesize 289 | \end{latex} 290 | 进行修改实现。 291 | 292 | 量的符号一般为单个拉丁字母或希腊字母,并一律采用斜体($\mathrm{pH}$例外)。为 293 | 区别不同情况,可在量符号上附加角标。在表达量值时,在公式、图、表和文字叙述中, 294 | 一律使用单位的国际符号,且无例外地用正体。单位符号与数值间要留适当间隙。建议统 295 | 一使用公式输入,其中单位需使用 \verb|\mathrm| 命令,单位符号与数值间的间隙用命 296 | 令 \verb|$\,$|。示例:量的符号 297 | \begin{latex} 298 | $t_d$ 299 | \end{latex} 300 | 显示为$t_d$,单位数值 301 | \begin{latex} 302 | $12\,\mathrm{kg}$ 303 | \end{latex} 304 | 显示为$12\,\mathrm{kg}$。 305 | 306 | \subsection*{列表环境} 307 | 308 | 为了适合中文习惯,模板调用 \textbf{enumitem} 宏包,对 \texttt{itemize}、 \texttt{enumerate} 和 \texttt{description} 三个常用的列表环境进行了调整,一方面减少了多余空间,另一方面可以自己指定标签的样式和符号。细节请参看 \textbf{enumitem} 文档,示例: 309 | \begin{enumerate} 310 | \item 编号列表示例 311 | \begin{enumerate} 312 | \item 次级编号列表 313 | \begin{enumerate} 314 | \item 三级编号列表 315 | \item 三级编号列表 316 | \item 三级编号列表 317 | \end{enumerate} 318 | \item 次级编号列表 319 | \end{enumerate} 320 | \item 编号列表示例 321 | \end{enumerate} -------------------------------------------------------------------------------- /data/chap04.tex: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: chap04.tex 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2012-04-28 00:15 6 | %% Last modified: 2019-11-06 17:39 7 | %%================================================ 8 | \chapter{常用排版示例} 9 | \label{cha:example} 10 | 11 | \section{插图示例} 12 | \label{sec:figure} 13 | 14 | \subsection{\LaTeX~中推荐使用的图片格式} 15 | 16 | 在~\LaTeX~中应用最多的图片格式是~EPS(Encapsulated PostScript)格式,它是一种 17 | 专用的打印机描述语言,常用于印刷或打印输出。EPS~格式图片可通过多种方式生成, 18 | 如果使用命令行界面,则可以用 ImageMagick,其可将其它格式图片转换为~EPS~格式图 19 | 片,同时还可以锐化图片,使图片的局部清晰一些。 20 | 21 | ImageMagick 包含多个命令行程序,其中最常用的是 \texttt{convert}。 22 | \begin{shell} 23 | convert [可选参数] 原文件名.原扩展名 新文件名.eps 24 | \end{shell} 25 | 26 | 除此之外,一些文字处理软件和科学计算软件也支持生成~EPS~格式的文件,可用“另存 27 | 为”功能查看某款软件是否能够将图片以~EPS~格式的形式保存。 28 | 29 | \subsection{插入单幅图形} 30 | 31 | 插图通常需要占据大块空白,所以在文字处理软件中用户经常需要调整插图的位置。 32 | \LaTeX~有一个 \texttt{figure} 环境可以自动完成这样的任务,这种自动调整位置的环 33 | 境称作浮动环境(float),之后还会介绍表格浮动环境。 34 | 35 | 单张图片插入形式如图~\ref{fig:golfer}~所示。 36 | \begin{figure}[htbp] 37 | \centering 38 | \includegraphics[width = 0.3\textwidth]{golfer} 39 | \caption{打高尔夫球的人} 40 | \label{fig:golfer} 41 | \end{figure} 42 | 43 | \begin{latex} 44 | \begin{figure}[htbp] 45 | \centering 46 | \includegraphics[width=0.3\textwidth]{golfer} 47 | \caption{打高尔夫球的人} 48 | \label{fig:golfer}%应放在\caption{}之后,否则引用时指向的是前一个插图 49 | \end{figure} 50 | \end{latex} 51 | 52 | 上述代码中,\verb|[htbp]| 选项用来指定插图排版的理想位置,这几个字母分别代表 53 | ~here、top、bottom、float page,也就是固定位置、页顶、页尾、单独的浮动页。可 54 | 以使用这几个字母的任意组合,一般不推荐单独使用 \verb|[h]|。如果要强制固定浮动 55 | 图形的位置,还可以用 \textbf{float} 宏包的 \verb|[H]| 选项。 56 | 57 | \subsection{插入多幅图形} 58 | 59 | \subsubsection*{并排摆放,共享标题} 60 | 61 | 当我们需要两幅图片并排摆放,并共享标题时,可以在 \texttt{figure} 环境中使用两个 62 | \begin{latex} 63 | \includegraphics{} 64 | \end{latex} 65 | 命令,如图~\ref{fig:fanqingfuming}~所示。 66 | 67 | \begin{latex} 68 | \begin{figure}[htbp] 69 | \centering 70 | \includegraphics[width=0.3\textwidth]{qingming} 71 | \hspace{36pt} 72 | \includegraphics[width=0.3\textwidth]{fanfu} 73 | \caption{反清复明} 74 | \label{fig:fanqingmuming} 75 | \end{figure} 76 | \end{latex} 77 | 78 | \begin{figure}[htbp] 79 | \centering 80 | \includegraphics[width=0.3\textwidth]{qingming} 81 | \hspace{36pt} 82 | \includegraphics[width=0.3\textwidth]{fanfu} 83 | \caption{反清复明} 84 | \label{fig:fanqingfuming} 85 | \end{figure} 86 | 87 | \subsubsection*{并排摆放,各有标题} 88 | 89 | 如果想要两幅并排的图片各有自己的标题,可以在 \texttt{figure} 环境中使用两个 90 | \texttt{minipage} 环境,每个环境里插入一个图,如图~\ref{fig:qingming}~和 91 | ~\ref{fig:fanfu}~所示。 92 | 93 | \begin{latex} 94 | \begin{figure}[htbp] 95 | \centering 96 | \begin{minipage}[t]{0.3\textwidth} 97 | \centering 98 | \includegraphics[width=\textwidth]{qingming} 99 | \caption{清明} 100 | \label{fig:qingming} 101 | \end{minipage} 102 | \hspace{36pt} 103 | \begin{minipage}[t]{0.3\textwidth} 104 | \centering 105 | \includegraphics[width=\textwidth]{fanfu} 106 | \caption{反复} 107 | \label{fig:fanfu} 108 | \end{minipage} 109 | \end{figure} 110 | \end{latex} 111 | 112 | \begin{figure}[htbp] 113 | \centering 114 | \begin{minipage}[t]{0.3\textwidth} 115 | \centering 116 | \includegraphics[width=\textwidth]{qingming} 117 | \caption{清明} 118 | \label{fig:qingming} 119 | \end{minipage} 120 | \hspace{36pt} 121 | \begin{minipage}[t]{0.3\textwidth} 122 | \centering 123 | \includegraphics[width=\textwidth]{fanfu} 124 | \caption{反复} 125 | \label{fig:fanfu} 126 | \end{minipage} 127 | \end{figure} 128 | 129 | \subsubsection*{并排摆放,共享标题,各有子标题} 130 | 131 | 如果想要两幅并排的图片共享一个标题,并各有自己的子标题,可以使用 132 | \textbf{subcaption} 宏包提供的 133 | \begin{latex} 134 | \subcaptionbox{<title>}[<width>]{<insertfigure>} 135 | \end{latex} 136 | 命令,如图~\ref{fig:subfig_a}~和~\ref{fig:subfig_b}~所示。 137 | 138 | \begin{latex} 139 | \begin{figure}[htbp] 140 | \centering 141 | \subcaptionbox{清明\label{fig:subfig_a}}[0.3\textwidth]{ 142 | \includegraphics[width=0.3\textwidth]{qingming} 143 | } 144 | \hspace{36pt} 145 | \subcaptionbox{反复\label{fig:subfig_b}}[0.3\textwidth]{ 146 | \includegraphics[width=0.3\textwidth]{fanfu} 147 | } 148 | \caption{反清复明} 149 | \end{figure} 150 | \end{latex} 151 | 152 | 每个子图可以有各自的引用,就象这个样子:\ref{fig:subfig_a}、 153 | \ref{fig:subfig_b}。 154 | 155 | \begin{figure}[htbp] 156 | \centering 157 | \subcaptionbox{清明\label{fig:subfig_a}}[0.3\textwidth]{ 158 | \includegraphics[width=0.3\textwidth]{qingming} 159 | } 160 | \hspace{36pt} 161 | \subcaptionbox{反复\label{fig:subfig_b}}[0.3\textwidth]{ 162 | \includegraphics[width=0.3\textwidth]{fanfu} 163 | } 164 | \caption{反清复明} 165 | \end{figure} 166 | 167 | \section{表格示例} 168 | \label{sec:table} 169 | 170 | 模板中关于表格的宏包有四个:\textbf{tabularx}、\textbf{multirow}、 171 | \textbf{longtable} 和\textbf{booktabs}。长表格还可以用\textbf{supertabular}, 172 | 可以方便地在表格下方加入脚注。 173 | 174 | \subsection{普通表格的绘制方法} 175 | 176 | \texttt{table} 环境是一个将表格嵌入文本的浮动环境,其标题和交叉引用的用法类似 177 | 于上一节提到的图形浮动环境 \texttt{figure}。该环境提供了最简单的表格功能,常用命令如下 178 | \begin{latex} 179 | \hline % 横线 180 | | % 竖线 181 | & % 分列 182 | \\ % 换行 183 | l c r % 横向居中、居左、居右对齐 184 | \end{latex} 185 | 186 | 科技文献中常使用三线表格,因此需要调用 \textbf{booktabs} 宏包,三条横线就分别 187 | 用 188 | \begin{latex} 189 | \toprule 190 | \midrule 191 | \bottomrule 192 | \end{latex} 193 | 等命令表示。其标准格式如表~\ref{table1}~所示。 194 | 195 | \begin{table}[htbp] 196 | \caption{文献类型和标识代码} 197 | \label{table1} 198 | \centering 199 | \begin{tabular}{cccc} 200 | \toprule 201 | 文献类型 & 标识代码 & 文献类型 & 标识代码\\ 202 | \midrule 203 | 普通图书 & M & 会议录 & C\\ 204 | 汇编 & G & 报纸 & N\\ 205 | 期刊 & J & 学位论文 & D\\ 206 | 报告 & R & 标准 & S\\ 207 | 专利 & P & 数据库 & DB\\ 208 | 计算机程序 & CP & 电子公告 & EB\\ 209 | \bottomrule 210 | \end{tabular} 211 | \end{table} 212 | 213 | 绘制该表格的代码如下: 214 | \begin{latex} 215 | \begin{table}[htbp] 216 | \caption{表格标题} 217 | \label{标签名} 218 | \centering 219 | \begin{tabular}{cc...c} 220 | \toprule 221 | 表头第1个格 & 表头第2个格 & ... & 表头第n个格 \\ 222 | \midrule 223 | 表中数据(1,1) & 表中数据(1,2) & ... & 表中数据(1,n)\\ 224 | 表中数据(2,1) & 表中数据(2,2) & ... & 表中数据(2,n)\\ 225 | ...................................................\\ 226 | 表中数据(m,1) & 表中数据(m,2) & ... & 表中数据(m,n)\\ 227 | \bottomrule 228 | \end{tabular} 229 | \end{table} 230 | \end{latex} 231 | 232 | \subsection{长表格的绘制方法} 233 | 234 | 长表格是当表格在当前页排不下而需要转页接排的情况下所采用的一种表格环境。若长 235 | 表格仍按照普通表格的绘制方法来获得,其所使用的 \verb|table| 浮动环境无法实现 236 | 表格的换页接排功能,表格下方过长部分会排在表格第1页的页脚以下。 237 | 238 | \begin{longtable}{l@{\hspace{6.5mm}}l@{\hspace{5.5mm}}l} 239 | \multicolumn{3}{c}{续表~\thetable\hskip1em 中国省级行政单位一览}\\ 240 | \toprule 名称 & 简称 & 省会或首府 \\ \midrule 241 | \endhead 242 | \caption{中国省级行政单位一览} 243 | \label{table2}\\ 244 | \toprule 名称 & 简称 & 省会或首府 \\ \midrule 245 | \endfirsthead 246 | \bottomrule 247 | \multicolumn{3}{r}{续下页}\\ 248 | \endfoot 249 | \bottomrule 250 | \endlastfoot 251 | 北京市 & 京 & 北京\\ 252 | 天津市 & 津 & 天津\\ 253 | 河北省 & 冀 & 石家庄市\\ 254 | 山西省 & 晋 & 太原市\\ 255 | 内蒙古自治区 & 蒙 & 呼和浩特市\\ 256 | 辽宁省 & 辽 & 沈阳市\\ 257 | 吉林省 & 吉 & 长春市\\ 258 | 黑龙江省 & 黑 & 哈尔滨市\\ 259 | 上海市 & 沪/申 & 上海\\ 260 | 江苏省 & 苏 & 南京市\\ 261 | 浙江省 & 浙 & 杭州市\\ 262 | 安徽省 & 皖 & 合肥市\\ 263 | 福建省 & 闽 & 福州市\\ 264 | 江西省 & 赣 & 南昌市\\ 265 | 山东省 & 鲁 & 济南市\\ 266 | 河南省 & 豫 & 郑州市\\ 267 | 湖北省 & 鄂 & 武汉市\\ 268 | 湖南省 & 湘 & 长沙市\\ 269 | 广东省 & 粤 & 广州市\\ 270 | 广西壮族自治区 & 桂 & 南宁市\\ 271 | 海南省 & 琼 & 海口市\\ 272 | 重庆市 & 渝 & 重庆\\ 273 | 四川省 & 川/蜀 & 成都市\\ 274 | 贵州省 & 黔/贵 & 贵阳市\\ 275 | 云南省 & 云/滇 & 昆明市\\ 276 | 西藏自治区 & 藏 & 拉萨市\\ 277 | 陕西省 & 陕/秦 & 西安市\\ 278 | 甘肃省 & 甘/陇 & 兰州市\\ 279 | 青海省 & 青 & 西宁市\\ 280 | 宁夏回族自治区 & 宁 & 银川市\\ 281 | 新疆维吾尔自治区 & 新 & 乌鲁木齐市\\ 282 | 香港特别行政区 & 港 & 香港\\ 283 | 澳门特别行政区 & 澳 & 澳门\\ 284 | 台湾省 & 台 & 台北市\\ 285 | 北京市 & 京 & 北京\\ 286 | 天津市 & 津 & 天津\\ 287 | 河北省 & 冀 & 石家庄市\\ 288 | 山西省 & 晋 & 太原市\\ 289 | 内蒙古自治区 & 蒙 & 呼和浩特市\\ 290 | 辽宁省 & 辽 & 沈阳市\\ 291 | 吉林省 & 吉 & 长春市\\ 292 | 黑龙江省 & 黑 & 哈尔滨市\\ 293 | 上海市 & 沪/申 & 上海\\ 294 | 江苏省 & 苏 & 南京市\\ 295 | 浙江省 & 浙 & 杭州市\\ 296 | 安徽省 & 皖 & 合肥市\\ 297 | 福建省 & 闽 & 福州市\\ 298 | 江西省 & 赣 & 南昌市\\ 299 | 山东省 & 鲁 & 济南市\\ 300 | 河南省 & 豫 & 郑州市\\ 301 | 湖北省 & 鄂 & 武汉市\\ 302 | 湖南省 & 湘 & 长沙市\\ 303 | 广东省 & 粤 & 广州市\\ 304 | 广西壮族自治区 & 桂 & 南宁市\\ 305 | 海南省 & 琼 & 海口市\\ 306 | 重庆市 & 渝 & 重庆\\ 307 | 四川省 & 川/蜀 & 成都市\\ 308 | 贵州省 & 黔/贵 & 贵阳市\\ 309 | 云南省 & 云/滇 & 昆明市\\ 310 | 西藏自治区 & 藏 & 拉萨市\\ 311 | 陕西省 & 陕/秦 & 西安市\\ 312 | 甘肃省 & 甘/陇 & 兰州市\\ 313 | 青海省 & 青 & 西宁市\\ 314 | 宁夏回族自治区 & 宁 & 银川市\\ 315 | 新疆维吾尔自治区 & 新 & 乌鲁木齐市\\ 316 | 香港特别行政区 & 港 & 香港\\ 317 | 澳门特别行政区 & 澳 & 澳门\\ 318 | 台湾省 & 台 & 台北市\\ 319 | \end{longtable} 320 | 321 | 表格~\ref{table2}~第~2~页的标题和表头是通过代码自动添加上去的。若表格在页面中 322 | 的竖直位置发生了变化,其在第~2~页及之后各页的标题和表头位置能够始终处于各页的 323 | 最顶部,无需调整。 324 | 325 | \subsection{列宽可调表格的绘制方法} 326 | 327 | 论文中能用到列宽可调表格的情况共有两种,一种是当插入的表格某一单元格内容过长 328 | 以至于一行放不下的情况,另一种是当对公式中首次出现的物理量符号进行注释的情况 329 | ,这两种情况都需要调用 \textbf{tabularx} 宏包。下面将分别对这两种情况下可调表格的绘制 330 | 方法进行阐述。 331 | 332 | \subsubsection{表格内某单元格内容过长的情况} 333 | 334 | 首先给出这种情况下的一个例子如表~\ref{table3}~所示。 335 | 336 | \begin{table}[htbp] 337 | \caption{最小的三个正整数的英文表示法} 338 | \label{table3} 339 | \begin{tabularx}{\textwidth}{llX} 340 | \toprule 341 | Value & Name & Alternate names, and names for sets of the given size\\ 342 | \midrule 343 | 1 & One & ace, single, singleton, unary, unit, unity\\ 344 | 2 & Two & binary, brace, couple, couplet, distich, deuce, double, doubleton, duad, duality, duet, duo, dyad, pair, snake eyes, span, twain, twosome, yoke\\ 345 | 3 & Three & deuce-ace, leash, set, tercet, ternary, ternion, terzetto, threesome, tierce, trey, triad, trine, trinity, trio, triplet, troika, hat-trick\\\bottomrule 346 | \end{tabularx} 347 | \end{table} 348 | 349 | 绘制该表格的代码如下: 350 | 351 | \begin{latex} 352 | \begin{table}[htbp] 353 | \caption{表格标题} 354 | \label{标签名} 355 | \begin{tabularx}{\textwidth}{l...X...l} 356 | \toprule 357 | 表头第1个格 & ... & 表头第X个格 & ... & 表头第n个格 \\ 358 | \midrule 359 | 表中数据(1,1) & ... & 表中数据(1,X) & ... & 表中数据(1,n)\\ 360 | 表中数据(2,1) & ... & 表中数据(2,X) & ... & 表中数据(2,n)\\ 361 | .........................................................\\ 362 | 表中数据(m,1) & ... & 表中数据(m,X) & ... & 表中数据(m,n)\\ 363 | \bottomrule 364 | \end{tabularx} 365 | \end{table} 366 | \end{latex} 367 | 368 | \texttt{tabularx} 环境共有两个必选参数:第1个参数用来确定表格的总宽度,这里取 369 | 为排版表格能达到的最大宽度——正文宽度 \verb|\textwidth|;第2个参数用来确定每列 370 | 格式,其中标为 \verb|X| 的项表示该列的宽度可调,其宽度值由表格总宽度确定。标 371 | 为 \verb|X| 的列一般选为单元格内容过长而无法置于一行的列,这样使得该列内容能 372 | 够根据表格总宽度自动分行。若列格式中存在不止一个 \verb|X| 项,则这些标为 373 | \verb|X| 的列的列宽相同,因此,一般不将内容较短的列设为 \verb|X| 。标为 374 | \verb|X| 的列均为左对齐,因此其余列一般选为 \verb|l| (左对齐),这样可使得表格 375 | 美观,但也可以选为 \verb|c| 或 \verb|r|。 376 | 377 | \subsubsection{对物理量符号进行注释的情况} 378 | 379 | 为使得对公式中物理量符号注释的转行与破折号“——”后第一个字对齐,此处最 380 | 好采用表格环境。此表格无任何线条,左对齐,且在破折号处对齐,一共有“式中”二字 381 | 、物理量符号和注释三列,表格的总宽度可选为文本宽度,因此应该采用 382 | \texttt{tabularx} 环境。由该环境生成的对公式中物理量符号进行注释的公式如式 383 | (\ref{eq:1})所示。 384 | 385 | \begin{equation} 386 | \label{eq:1} 387 | \ddot{\symbf{\rho}}-\frac{\mu}{R_t^3}\left(3\symbf{R_t}\frac{\symbf{R_t\rho}}{R_t^2}-\symbf{\rho}\right)=\symbf{a} 388 | \end{equation} 389 | \begin{flushleft} 390 | \renewcommand\arraystretch{1.25} 391 | \begin{tabularx}{\textwidth}{@{}>{\normalsize\rm}l@{\quad}>{\normalsize\rm}l@{——}>{\normalsize\rm}X@{}} 392 | 式中& $\symbf{\rho}$ &追踪飞行器与目标飞行器之间的相对位置矢量;\\ 393 | & $\ddot{\symbf{\rho}}$&追踪飞行器与目标飞行器之间的相对加速度;\\ 394 | & $\symbf{a}$ &推力所产生的加速度;\\ 395 | & $\symbf{R_t}$ & 目标飞行器在惯性坐标系中的位置矢量;\\ 396 | & $\omega_{t}$ & 目标飞行器的轨道角速度;\\ 397 | & $\symbf{g}$ & 重力加速度,$=\frac{\mu}{R_{t}^{3}}\left( 398 | 3\symbf{R_{t}}\frac{\symbf{R_{t}\rho}}{R_{t}^{2}}-\symbf{\rho}\right)=\omega_{t}^{2}\frac{R_{t}}{p}\left( 399 | 3\symbf{R_{t}}\frac{\symbf{R_{t}\rho}}{R_{t}^{2}}-\symbf{\rho}\right)$,这里~$p$~是目标飞行器的轨道半通径。 400 | \end{tabularx}\vspace{.5ex}%TODO : 注释内容自动转页接排 401 | \end{flushleft} 402 | 403 | 其中生成注释部分的代码及其说明如下: 404 | \begin{latex} 405 | \begin{tabularx}{\textwidth}{@{}l@{\quad}l@{——}X@{}} 406 | 式中 & symbol-1 & symbol-1的注释内容;\\ 407 | & symbol-2 & symbol-2的注释内容;\\ 408 | .............................;\\ 409 | & symbol-m & symbol-m的注释内容。 410 | \end{tabularx} 411 | \end{latex} 412 | 413 | \texttt{tabularx} 环境的第1个参数为正文宽度,第2个参数里面各个符号的意义为: 414 | \begin{itemize} 415 | \item 第1个@{}表示在“式中”二字左侧不插入任何文本,“式中”二字能够在正文中左对 416 | 齐,若无此项,则“式中”二字左侧会留出一定的空白; 417 | \item \verb|@{\quad}| 表示在“式中”和物理量符号间插入一个空铅宽度的空白; 418 | \item \verb|@{——}| 实现插入破折号的功能; 419 | \item 第2个 \verb|@{}| 表示在注释内容靠近正文右边界的地方能够实现右对齐。 420 | \end{itemize} 421 | 422 | \subsection{小页中的脚注} 423 | 424 | 关于小页中的脚注,请看下面的例子: 425 | 426 | \begin{minipage}[t]{\linewidth-\parindent} 427 | 柳宗元,字子厚(773-819),河东(今永济县)人\footnote{山西永济水饺。},是唐 428 | 代杰出的文学家,哲学家,同时也是一位政治改革家。与韩愈共同倡导唐代古文运动, 429 | 并称韩柳\footnote{唐宋八大家之首二位。}。 430 | \end{minipage} 431 | 432 | \section{数学公式示例} 433 | \label{sec:equation} 434 | 435 | \LaTeX{} 的数学公式有两种形式:行间(inline)模式和独立(display)模式。前者是 436 | 指在正文中插入数学内容;后者独立排列,可以有或者没有编号。行间公式和无编号独立 437 | 公式都有多种输入方法,一般行间公式用 \verb|$|\ldots \verb|$|,无编号独立公式用 438 | \verb|\[|\ldots \verb|\]|。有编号独立公式则需要用 \texttt{equation} 环境。 439 | 440 | 注意一下公式显示模式的不同,这个公式为行间模式: 441 | $\lim_{n \to \infty} \sum_{k=1}^n \frac{1}{k^2} = \frac{\pi^2}{6}$;下面的公式 442 | 是独立模式: 443 | \[\lim_{n \to \infty} \sum_{k=1}^n \frac{1}{k^2} = \frac{\pi^2}{6}\] 444 | 445 | \subsection{多行公式} 446 | 447 | \textbf{amsmath} 宏包提供了额外的行间独立(display)公式的结构,主要用于一个 448 | 公式太长一行放不下,或几个公式需要写成一组的情况,该宏包主要提供以下几个环境 449 | : 450 | \begin{center} 451 | \begin{tabular}[c]{cccc} 452 | equation & align & gather & split \\ 453 | flalign & multline & alignat & \\ 454 | \end{tabular} 455 | \end{center} 456 | 457 | 除了 \texttt{split} 外,其余环境均提供带*的版本,不生成公式编号。 458 | 459 | \subsubsection{长公式} 460 | 461 | 对于多行不需要对齐的长公式,我们可以用 \texttt{multline} 环境。 462 | \begin{multline} 463 | \framebox[.65\columnwidth]{A}\\ 464 | \framebox[.5\columnwidth]{B}\\ 465 | \shoveright{\framebox[.5\columnwidth]{C}}\\ 466 | \framebox[.65\columnwidth]{D} 467 | \end{multline} 468 | 469 | 其代码如下: 470 | \begin{latex} 471 | \begin{multline} 472 | \framebox[.65\columnwidth]{A}\\ 473 | \framebox[.5\columnwidth]{B}\\ 474 | \shoveright{\framebox[.tt\columnwidth]{C}}\\ 475 | \framebox[.65\columnwidth]{D} 476 | \end{multline} 477 | \end{latex} 478 | 479 | \texttt{multline} 环境用于单行放不下的长公式,其第一行及最后一行分别居左、居右 480 | 对齐,两端均缩进距离 \verb|\multlinegap|;其它行则默认居中排布,但可以用个命令 481 | \verb|\shoveleft|、\verb|\shoveright| 分别使居左或居右排布。 482 | 483 | 需要对齐的长公式可以用 \texttt{split} 环境,它本身不能单独使用,因此也称作次环境 484 | ,必须包含在 \texttt{equation} 或其它数学环境内。\texttt{split} 环境用 \verb|\\| 485 | 和 \verb|&| 来分行和设置对齐位置。 486 | \begin{equation} 487 | \begin{split} 488 | H_c&=\frac{1}{2n} \sum^n_{l=0}(-1)^{l}(n-{l})^{p-2} 489 | \sum_{l _1+\dots+ l _p=l}\prod^p_{i=1} \binom{n_i}{l _i}\\ 490 | &\quad\cdot[(n-l)-(n_i-l_i)]^{n_i-l_i}\cdot 491 | \Bigl[(n-l)^2-\sum^p_{j=1}(n_i-l_i)^2\Bigr]. 492 | \end{split} 493 | \label{eqn:barwq} 494 | \end{equation} 495 | 496 | \subsubsection{公式组} 497 | 498 | 不需要对齐的公式组用 \texttt{gather} 环境,该环境中的公式均居中排布,各公式间用 499 | \verb|\\| 分开;需要对齐的用 \texttt{align},在该环境中使用 \verb|\text| 命令可 500 | 以生成对单独公式的注释。 501 | \begin{gather} 502 | first equation\\ 503 | \begin{split} 504 | second & equation\\ 505 | & on twolines 506 | \end{split} 507 | \end{gather} 508 | 509 | \begin{align} 510 | x & = y_1-y_2+y_3-y_5+y_8-\dots && \text{by \eqref{eqn:barwq}}\\ 511 | & = y'\circ y^* && \text{by \eqref{eqn:barwq}}\\ 512 | & = y(0) y' && \text{by Axiom 1.} 513 | \end{align} 514 | 515 | 就像单独的行间公式一样,使用 \texttt{gather}、\texttt{align} 和 516 | \texttt{alignat} 环境生成的公式组中的每个公式也都是占据整个文本的宽度,因此 517 | 这样的公式组两侧不能再添加其它内容,比如大括号等。不过相应地用 518 | \texttt{gathered}、\texttt{aligned} 和 \texttt{alignedat} 环境则生成仅占据 519 | 实际公式宽度的公式组。 520 | \begin{equation*} 521 | \left. \begin{aligned} 522 | \symbf{B'}&=-\symbfit{\partial}\times \symbf{E},\\ 523 | \symbf{E'}&=\symbfit{\partial}\times \symbf{B} - 4\pi j, 524 | \end{aligned} 525 | \right\} 526 | \qquad \text{Maxwell's equations} 527 | \end{equation*} 528 | 529 | 有多种条件的公式组用 \texttt{cases} 次环境。 530 | \[ P_{r-j}=\begin{cases} 531 | 0& \text{if $r-j$ is odd},\\ 532 | r!\,(-1)^{(r-j)/2}& \text{if $r-j$ is even}. 533 | \end{cases} \] 534 | 535 | 这里仅简单介绍了 \textbf{amsmath} 的功能,更详尽的说明可参见该宏包的文档。 536 | 537 | \subsection{定理和证明} 538 | 539 | \zzuthesis{} 定义了常用的数学环境: 540 | \begin{center} 541 | \begin{tabular}{*{7}{l}}\hline 542 | theorem & definition & lemma & corollary &\\ 543 | 定理 & 定义 & 引理 & 推论 &\\\hline 544 | \end{tabular} 545 | \end{center} 546 | 547 | 以上环境的定义采用 \textbf{amsthm} 宏包提供的 \verb|\newtheorem| 命令,其语法 548 | 如下: 549 | 550 | \begin{latex} 551 | \newtheorem{环境名}[编号延续]{显示名}[编号层次] 552 | \end{latex} 553 | 554 | 下面是应用示例: 555 | \begin{definition} 556 | Java是一种跨平台的编程语言。 557 | \end{definition} 558 | 559 | \begin{theorem} 560 | 咖啡因会使人的大脑兴奋。 561 | \end{theorem} 562 | 563 | \begin{lemma} 564 | 茶和咖啡都会使人兴奋。 565 | \end{lemma} 566 | 567 | \begin{corollary} 568 | 晚上喝咖啡会导致失眠。 569 | \end{corollary} 570 | 571 | \texttt{proof} 环境可以用来输入证明,它会在结尾输入一个 QED 符号 572 | \footnote{拉丁语~quod erat demonstrandum~的缩写。}。 573 | 574 | \begin{proof}[命题“物质无限可分”的证明] 575 | 一尺之棰,日取其半,万世不竭。 576 | \end{proof} -------------------------------------------------------------------------------- /data/cover.tex: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: cover.tex 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2012-01-14 13:44 6 | %% Last modified: 2019-11-03 00:30 7 | %%================================================ 8 | % 研究生论文:学校代码、学号或申请号、密级 9 | \schoolcode{10459} 10 | \id{208010102893000753} 11 | \secretlevel{} 12 | 13 | % 论文题目 14 | \ctitle{郑州大学学位论文 \LaTeX\ 模板使用示例} 15 | 16 | % 研究生论文: 17 | % 培养院系、学科门类、专业名称、专业学位名称(仅限于专业博士、硕士学位论文)、 18 | % 导师姓名、完成时间 19 | % 本科论文: 20 | % 指导老师、职称、学生姓名、学号、专业、院(系)、完成时间 21 | \cdepartment{材料科学与工程学院} 22 | \csubject{工\hspace{2em}学} 23 | \cmajor{材料科学与工程类} 24 | \cauthor{赵钱孙} 25 | \csupervisor{吴郑王} 26 | \protitle{教授}% 27 | \stuno{20080800901}%本科论文需要学号 28 | % 时间自动生成 29 | % \submitdate{} 30 | % \cdate{\CJKdigits{\the\year}年\CJKnumber{\the\month}月} 31 | % \cdate{2012年6月} 32 | 33 | % 研究生论文:英文封面 34 | \etitle{An Introduction to \LaTeX{} Thesis Template of Zhengzhou University} 35 | \emajor{Materials Science and Engineering} 36 | \edepartment{School of Materials Science and Engineering} 37 | \eauthor{Zhao Qiansun} 38 | \esupervisor{Prof. Wu Zhengwang} 39 | % \edate{December, 2005}%英文日期自动生成 40 | -------------------------------------------------------------------------------- /data/denotation.tex: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: denotation.tex 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2012-01-14 13:44 6 | %% Last modified: 2019-11-05 15:46 7 | %%================================================ 8 | \begin{denotation} 9 | 10 | \item[HPC] 高性能计算 (High Performance Computing) 11 | \item[cluster] 集群 12 | \item[Itanium] 安腾 13 | \item[SMP] 对称多处理 14 | \item[API] 应用程序编程接口 15 | \item[PI] 聚酰亚胺 16 | \item[MPI] 聚酰亚胺模型化合物,N-苯基邻苯酰亚胺 17 | \item[PBI] 聚苯并咪唑 18 | \item[MPBI] 聚苯并咪唑模型化合物,N-苯基苯并咪唑 19 | \item[PY] 聚吡咙 20 | \item[PMDA-BDA] 均苯四酸二酐与联苯四胺合成的聚吡咙薄膜 21 | \item[$\Delta G$] 活化自由能~(Activation Free Energy) 22 | \item [$\chi$] 传输系数~(Transmission Coefficient) 23 | \item[$E$] 能量 24 | \item[$m$] 质量 25 | \item[$c$] 光速 26 | \item[$P$] 概率 27 | \item[$T$] 时间 28 | \item[$v$] 速度 29 | \item[劝学] 君子曰:学不可以已。青,取之于蓝,而青于蓝;冰,水为之,而寒于水。 30 | 木直中绳。(车柔)以为轮,其曲中规。虽有槁暴,不复挺者,(车柔)使之然也。故木 31 | 受绳则直, 金就砺则利,君子博学而日参省乎己,则知明而行无过矣。吾尝终日而思矣 32 | , 不如须臾之所学也;吾尝(足齐)而望矣,不如登高之博见也。登高而招,臂非加长 33 | 也, 而见者远; 顺风而呼, 声非加疾也,而闻者彰。假舆马者,非利足也,而致千 34 | 里;假舟楫者,非能水也,而绝江河, 君子生非异也,善假于物也。积土成山,风雨兴 35 | 焉;积水成渊,蛟龙生焉;积善成德,而神明自得,圣心备焉。故不积跬步,无以至千里 36 | ;不积小流,无以成江海。骐骥一跃,不能十步;驽马十驾,功在不舍。锲而舍之,朽木 37 | 不折; 锲而不舍,金石可镂。蚓无爪牙之利,筋骨之强,上食埃土,下饮黄泉,用心一 38 | 也。蟹六跪而二螯,非蛇鳝之穴无可寄托者,用心躁也。——荀况 39 | \end{denotation} 40 | -------------------------------------------------------------------------------- /data/resume.tex: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: resume.tex 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2012-01-12 18:07 6 | %% Last modified: 2016-08-28 21:09 7 | %%================================================ 8 | \begin{resume} 9 | 10 | \resumeitem{个人简历} 11 | 12 | xxxx 年 xx 月 xx 日出生于 xx 省 xx 县。 13 | 14 | xxxx 年 9 月考入 xx 大学 xx 系 xx 专业,xxxx 年 7 月本科毕业并获得 xx 学士学位。 15 | 16 | xxxx 年 9 月免试进入 xx 大学 xx 系攻读 xx 学位至今。 17 | 18 | \resumeitem{发表的学术论文} % 发表的和录用的合在一起 19 | 20 | \begin{enumerate}[{[}1{]}] 21 | \item Yang Y, Ren T L, Zhang L T, et al. Miniature microphone with silicon- 22 | based ferroelectric thin films. Integrated Ferroelectrics, 2003, 23 | 52:229-235. (SCI 收录, 检索号:758FZ.) 24 | \item 杨轶, 张宁欣, 任天令, 等. 硅基铁电微声学器件中薄膜残余应力的研究. 中国机 25 | 械工程, 2005, 16(14):1289-1291. (EI 收录, 检索号:0534931 2907.) 26 | \item 杨轶, 张宁欣, 任天令, 等. 集成铁电器件中的关键工艺研究. 仪器仪表学报, 27 | 2003, 24(S4):192-193. (EI 源刊.) 28 | \item Yang Y, Ren T L, Zhu Y P, et al. PMUTs for handwriting recognition. In 29 | press. (已被 Integrated Ferroelectrics 录用. SCI 源刊.) 30 | \item Wu X M, Yang Y, Cai J, et al. Measurements of ferroelectric MEMS 31 | microphones. Integrated Ferroelectrics, 2005, 69:417-429. (SCI 收录, 检索号 32 | :896KM.) 33 | \item 贾泽, 杨轶, 陈兢, 等. 用于压电和电容微麦克风的体硅腐蚀相关研究. 压电与声 34 | 光, 2006, 28(1):117-119. (EI 收录, 检索号:06129773469.) 35 | \item 伍晓明, 杨轶, 张宁欣, 等. 基于MEMS技术的集成铁电硅微麦克风. 中国集成电路, 36 | 2003, 53:59-61. 37 | \end{enumerate} 38 | 39 | \resumeitem{研究成果} % 有就写,没有就删除 40 | \begin{enumerate}[{[}1{]}] 41 | \item 任天令, 杨轶, 朱一平, 等. 硅基铁电微声学传感器畴极化区域控制和电极连接的 42 | 方法: 中国, CN1602118A. (中国专利公开号.) 43 | \item Ren T L, Yang Y, Zhu Y P, et al. Piezoelectric micro acoustic sensor 44 | based on ferroelectric materials: USA, No.11/215, 102. (美国发明专利申请号.) 45 | \end{enumerate} 46 | \end{resume} 47 | -------------------------------------------------------------------------------- /data/review.tex: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: review.tex 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2020-04-01 09:19 6 | %% Last modified: 2020-04-05 20:38 7 | %%================================================ 8 | \begin{review} 9 | 10 | English words like `technology' stem from a Greek root beginning with 11 | the letters $\tau\epsilon\chi\ldots\,$; and this same Greek word means {\sl 12 | art\/} as well as technology. Hence the name \TeX, which is an 13 | uppercase form of $\tau\epsilon\chi$. 14 | 15 | \section*{Section I} 16 | 17 | Insiders pronounce the $\chi$ of \TeX\ as a Greek chi, not as an `x', so that 18 | \TeX\ rhymes with the word blecchhh. It's the `ch' sound in Scottish words 19 | like {\sl loch\/} or German words like {\sl ach\/}; it's a Spanish `j' and a 20 | Russian `kh'. When you say it correctly to your computer, the terminal 21 | may become slightly moist. 22 | 23 | The purpose of this pronunciation exercise is to remind you that \TeX\ is 24 | primarily concerned with high-quality technical manuscripts: Its emphasis is 25 | on art and technology, as in the underlying Greek word. If you merely want 26 | to produce a passably good document---something acceptable and basically 27 | readable but not really beautiful---a simpler system will usually suffice. 28 | With \TeX\ the goal is to produce the {\sl finest\/} quality; this requires 29 | more attention to detail, but you will not find it much harder to go the 30 | extra distance, and you'll be able to take special pride in the finished 31 | product. 32 | 33 | \section*{Section II} 34 | 35 | On the other hand, it's important to notice another thing about \TeX's name: 36 | The `E' is out of kilter. This 37 | displaced `E' is a reminder that \TeX\ is about typesetting, and it 38 | distinguishes \TeX\ from other system names. In fact, TEX (pronounced 39 | {\sl tecks\/}) is the admirable {\sl Text EXecutive\/} processor developed by 40 | Honeywell Information Systems. Since these two system names are 41 | pronounced quite differently, they should also be spelled differently. The 42 | correct way to refer to \TeX\ in a computer file, or when using some other 43 | medium that doesn't allow lowering of the `E', is to type `TeX'. Then 44 | there will be no confusion with similar names, and people will be 45 | primed to pronounce everything properly. 46 | 47 | \section*{References} 48 | 49 | \begin{enumerate}[{$[$}1{$]$}] 50 | \item Donald E. Knuth. The \TeX book. Addison-Wesley, 1984. ISBN: 0-201-13448-9 51 | \item Paul W. Abrahams, Karl Berry and Kathryn A. Hargreaves. \TeX\ for the 52 | Impatient. Addison-Wesley, 1990. ISBN: 0-201-51375-7 53 | \item David Salomon. The advanced \TeX book. New York : Springer, 1995. ISBN:0-387-94556-3 54 | \end{enumerate} 55 | 56 | \end{review} -------------------------------------------------------------------------------- /docutils.sty: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: docutils.sty 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2012-05-06 15:05 6 | %% Last modified: 2020-01-03 23:59 7 | %%================================================ 8 | \ProvidesPackage{docutils} 9 | [2020/01/03 5.0.1 Packages used in Documentation.] 10 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 11 | %% 长表格:模板中使用supertabular的脚注环境。TODO 12 | %% 但在本模板示例中使用该环境时,表格长度超过一页时,页面下边距过大! 13 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 14 | % \RequirePackage{supertabular}%长表格 15 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 16 | %% 代码演示环境 17 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 18 | \RequirePackage{xcolor}%颜色 19 | \RequirePackage{listings} 20 | \lstdefinestyle{lstStyleBase}{% 21 | basicstyle=\small\ttfamily, 22 | aboveskip=\medskipamount, 23 | belowskip=\medskipamount, 24 | lineskip=0pt, 25 | boxpos=c, 26 | showlines=false, 27 | extendedchars=true, 28 | upquote=true, 29 | tabsize=2, 30 | showtabs=false, 31 | showspaces=false, 32 | showstringspaces=false, 33 | numbers=none, 34 | linewidth=\linewidth, 35 | xleftmargin=4pt, 36 | xrightmargin=0pt, 37 | resetmargins=false, 38 | breaklines=true, 39 | breakatwhitespace=false, 40 | breakindent=0pt, 41 | breakautoindent=true, 42 | columns=flexible, 43 | keepspaces=true, 44 | gobble=0, 45 | framesep=3pt, 46 | rulesep=1pt, 47 | framerule=1pt, 48 | backgroundcolor=\color{gray!5}, 49 | stringstyle=\color{green!40!black!100}, 50 | keywordstyle=\bfseries\color{blue!50!black}, 51 | commentstyle=\color{black!50}} 52 | 53 | \lstdefinestyle{lstStyleShell}{% 54 | style=lstStyleBase, 55 | frame=l, 56 | rulecolor=\color{purple}, 57 | language=bash} 58 | 59 | \lstdefinestyle{lstStyleLaTeX}{% 60 | style=lstStyleBase, 61 | frame=l, 62 | rulecolor=\color{violet}, 63 | language=[LaTeX]TeX} 64 | 65 | \lstnewenvironment{latex}{\lstset{style=lstStyleLaTeX}}{} 66 | \lstnewenvironment{shell}{\lstset{style=lstStyleShell}}{} 67 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 68 | %% 自定义命令 69 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 70 | \RequirePackage{metalogo}%XeLaTeX Logo 71 | \RequirePackage{xspace}%TeXLive Logo 72 | \DeclareRobustCommand{\BibTeX}{B\kern-.05em% 73 | \hbox{$\m@th$% %% force math size calculations 74 | \csname S@\f@size\endcsname 75 | \fontsize\sf@size\z@ 76 | \math@fontsfalse\selectfont 77 | I\kern-.025emB}% 78 | \kern-.08em% 79 | \-\TeX} 80 | \def\TeXLive{\TeX{} Live\xspace} 81 | \endinput 82 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 83 | %% End of file `docutils.sty'. 84 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 85 | -------------------------------------------------------------------------------- /figures/fanfu.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-3.0 EPSF-3.0 2 | %%Creator: cairo 1.10.2 (http://cairographics.org) 3 | %%CreationDate: Sat May 19 23:02:50 2012 4 | %%Pages: 1 5 | %%BoundingBox: 0 -1 698 642 6 | %%DocumentData: Clean7Bit 7 | %%LanguageLevel: 2 8 | %%EndComments 9 | %%BeginProlog 10 | /cairo_eps_state save def 11 | /dict_count countdictstack def 12 | /op_count count 1 sub def 13 | userdict begin 14 | /q { gsave } bind def 15 | /Q { grestore } bind def 16 | /cm { 6 array astore concat } bind def 17 | /w { setlinewidth } bind def 18 | /J { setlinecap } bind def 19 | /j { setlinejoin } bind def 20 | /M { setmiterlimit } bind def 21 | /d { setdash } bind def 22 | /m { moveto } bind def 23 | /l { lineto } bind def 24 | /c { curveto } bind def 25 | /h { closepath } bind def 26 | /re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto 27 | 0 exch rlineto 0 rlineto closepath } bind def 28 | /S { stroke } bind def 29 | /f { fill } bind def 30 | /f* { eofill } bind def 31 | /n { newpath } bind def 32 | /W { clip } bind def 33 | /W* { eoclip } bind def 34 | /BT { } bind def 35 | /ET { } bind def 36 | /pdfmark where { pop globaldict /?pdfmark /exec load put } 37 | { globaldict begin /?pdfmark /pop load def /pdfmark 38 | /cleartomark load def end } ifelse 39 | /BDC { mark 3 1 roll /BDC pdfmark } bind def 40 | /EMC { mark /EMC pdfmark } bind def 41 | /cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def 42 | /Tj { show currentpoint cairo_store_point } bind def 43 | /TJ { 44 | { 45 | dup 46 | type /stringtype eq 47 | { show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse 48 | } forall 49 | currentpoint cairo_store_point 50 | } bind def 51 | /cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore 52 | cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def 53 | /Tf { pop /cairo_font exch def /cairo_font_matrix where 54 | { pop cairo_selectfont } if } bind def 55 | /Td { matrix translate cairo_font_matrix matrix concatmatrix dup 56 | /cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point 57 | /cairo_font where { pop cairo_selectfont } if } bind def 58 | /Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def 59 | cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def 60 | /g { setgray } bind def 61 | /rg { setrgbcolor } bind def 62 | /d1 { setcachedevice } bind def 63 | %%EndProlog 64 | 11 dict begin 65 | /FontType 42 def 66 | /FontName /STHupo def 67 | /PaintType 0 def 68 | /FontMatrix [ 1 0 0 1 0 0 ] def 69 | /FontBBox [ 0 0 0 0 ] def 70 | /Encoding 256 array def 71 | 0 1 255 { Encoding exch /.notdef put } for 72 | Encoding 1 /uni53CD put 73 | /CharStrings 2 dict dup begin 74 | /.notdef 0 def 75 | /uni53CD 1 def 76 | end readonly def 77 | /sfnts [ 78 | <00010000000a008000030020636d61700015f07e000001b800000042637674201af41bc00000 79 | 01fc000001fc6670676dfec8851d000003f8000003a2676c796613c753cb000000ac0000010c 80 | 6865616477f8dd4e0000079c0000003668686561070102b0000007d400000024686d747807d0 81 | 0033000007f8000000086c6f63610000010c000008000000000c6d617870033c057b0000080c 82 | 00000020707265706c1a18cc0000082c0000039100010033ff5603da02f60062000118013215 83 | 14060706141e0215140623222e01272622070e0122263436373e02342e0235343632171e0233 84 | 3236342206222e012206151416140e01070e01141615140623222634373e0135113436331732 85 | 3736333215140e0223272206141633032760363b04094d7238281133793b050c0f35ad4f2f16 86 | 1249501118470f484210233a08030a210b1c181c375f6515120504282f1336182c4613292331 87 | 4d94d2c80c0b502951ca6c810904050a020158319e51050807373a2d1f5e144728040b275450 88 | 3e28061926110d1858230d1c3f14243a0538100b174654331b24176111010b3f4b2d08121029 89 | 45397e9d39011242380118026828290b0d020916070000000002000300000000001400010000 90 | 000000340004002000000004000400010000f001ffff0000f000ffff10000001000000000006 91 | 000e000000000002000000010000000000600092009000060006000d0015001c0023002c0032 92 | 0038003e0046004a0050005700600068006e0075007e00820088008c00920008000f00130019 93 | 0020002800310037003d0043004a004e0054005a005f0065006b00720078007d008500900096 94 | 0000000000000000003e003e003e003e003e0000000000000000002c002c002c002c003e0058 95 | 0096002c003e005800960000000000000000003e002e002d002d0033003e002a002e0033003a 96 | 00400046004b004f0000000000000000003f0040003000300039003f00440048004f002c0032 97 | 0036003c00400044004800500000000000000000003e003e001100110039003e0046004a004f 98 | 003e0046004b00000000000000000060009300360036003e0050005b00600064006900720076 99 | 00900013001c002400290030003e0046004a004e00520058005d00630069006d0071007c0081 100 | 0088008d0093000000000000000000290026002900290036003e0044004c005000260030003a 101 | 003e004b00500000000000000000003e003e002e002e0032003e003e004b0000000000000000 102 | 003e003e001e001e003e003e0000000000000000003e003e003e003e004c003e0047004b0000 103 | 000000000000003e003e00130013003e003a003e0043004b0000000000000000002500250025 104 | 002500300037003e004b00250029003e0044004c0000000000000000401e1d1c1b1a19181716 105 | 1514131211100f0e0d0c0b0a090807060504030201002c2d2c20b0122b7645535845515820b0 106 | 122b761b21591b212121592d2c2020b0162b20456844b0142b2d2c2020b0162b204520b02061 107 | 6820b0014351582121b00143441bb0022342b0032342b0112b66204b5158214bb040605920b0 108 | 052342b04060b0062342b00343b00543b00f2bb00043b00543b00d2b61b00343b00643b00f2b 109 | b00043b00643b00d2b618cb00243b00143618cb0008bb00143604459b0142b2d2c2020b0162b 110 | 204520b020606820b0014353582121b00143441bb0022342b0032342b0102b66204b5158214b 111 | b040605920b0052342b04060b0062342b00043b00543b00d2bb00343b00543b00e2b61b00043 112 | b00643b00d2bb00343b00643b00e2b618cb00143b00243618cb0008bb0014323614459b0142b 113 | 2d2c4520b000234268b00123422d2cb00143442d2c4523458a4520b000234260682361b00123 114 | 422d2c20452068b0022342b000436168b001436020b002435158441b21b00143b002435158b0 115 | 02431bb001435944592d2c20452068b0022342b0004361656865b001436020b002435358441b 116 | 21b00143b002435358b002431bb001435944592d2c204567442d2c204566442d2c634b622d2c 117 | b00c2b206623b0022561b004435358b04060592d2cb00c2bb02060206623b0022561b0044353 118 | 58b04060592d2cb00c2bb02061206623b0022561b004435358b04060592d2cb160024360b004 119 | 43614b63b00343622d2cb180014360b00443614b63b00043622d2cb04461b00863b00423422d 120 | 2cb10700422d2c45b003436164b007438bb00723422d2cb30044060743608b201d442d2c45b0 121 | 0323422d2c204568442d2c204520b020616820b0014351582121b00143441bb0022342b00323 122 | 42b0112b66204b5158214bb040605920b0052342b04060b0062342b00343b00543b00f2bb000 123 | 43b00543b00d2b61b00343b00643b00f2bb00043b00643b00d2b618cb00243b00143618cb000 124 | 8bb001436044592d2c204520b020606820b0014353582121b00143441bb0022342b0032342b0 125 | 102b66204b5158214bb040605920b0052342b04060b0062342b00043b00543b00d2bb00343b0 126 | 0543b00e2b61b00043b00643b00d2bb00343b00643b00e2b618cb00143b00243618cb0008bb0 127 | 0143236144592d2c2020b0162b202045b001435258b00b2b1bb00a2b5945b0022342b0142b2d 128 | 2c2020b0162b202045b001435258b00b2b1bb00a2b5945b0022342b0142b2d2c20392f2d2c20 129 | 8a208a39392f2f2d0000000100000001000051ef6fe25f0f3cf5000303e800000000b1e38fa0 130 | 0000000063210a8dffbdff17042103200000000c0001000100000000000100000320ff170000 131 | 03e8ffbdffae042100010000000000000000000000000000000203e8000003e8003300000000 132 | 000000000000010c00010000000201cd00110000000000020003000a00200000030503a20000 133 | 0000403c15fd17fb17f902f706f803f705f506f603f505fc17fa17f402f302f202f102f00248 134 | 1248ec17ea17e802e606e504e703e605eb17e917e402e302481240ff48df17dd17db06da04db 135 | 05d902de17dc17d802d702481248d317d117cf02d217d017ce02cd02481248c917c717c502c4 136 | 02c817c617c302c206c104c205481248bd17bb17b806b903b805b706b604b705b502b402bc17 137 | ba17b206b303b205b006b103b005af02ae02481248aa17a817a606a504a605a402a306a204a3 138 | 05a006a103a0059e069d049f039e059b069c039b0599069a0398049905970296029406950394 139 | 0593029202a917a71748124891028f0690038f058e028c068b048d038c058a02890288024612 140 | 46841782177f0680037f057e02831781177c067d037b047c057a0679047a0578024812487417 141 | 721770026f026d066c046e036d056b066a40ff046b0569027317711768026702650666036404 142 | 650563024812485f175d175b065a045b05590257065803570555065404560355055e175c1753 143 | 025206510452054812484d174b1749024802470246024c174a17481248450244024302420246 144 | 12463e173c173a023d173b173902481248351733173006310330052e062f032e052c062d032b 145 | 042c0529062a0329052706260428032705240623042503240522062104220520061f0420051e 146 | 061d041e051b061c031b05341732171a0619041a051706180317051506160314041505120613 147 | 03120510060f04110310050e060d040e050b060c030a040b0509060804090506060504070306 148 | 0548124813c00501b80778858d8d4b5058b101018e1bb100018e592b01762b2b2b2b2b2b2b2b 149 | 2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b 150 | 2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b002b2b2b01762b2b 151 | 2b2b2b762b2b2b002b2b2b2b2b2b01762b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b01 152 | 762b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b2b2b2b2b2b00 153 | 2b2b2b2b2b2b01762b2b2b2b2b2b2b2b2b2b2b2b2b762b2b2b002b2b2b2b2b2b2b2b2b2b2b2b 154 | 2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b 155 | 2b2b2b2b01762b2b2b2b2b2b2b002b2b2b2b01762b2b2b2b2b002b2b2b01762b2b2b2b2b002b 156 | 2b2b2b2b2b01762b2b2b2b2b002b2b2b2b2b2b2b01762b2b2b2b2b2b2b2b002b2b2b2b2b2b2b 157 | 2b2b2b00000000> 158 | ] def 159 | /f-0-0 currentdict end definefont pop 160 | 11 dict begin 161 | /FontType 42 def 162 | /FontName /STCaiyun def 163 | /PaintType 0 def 164 | /FontMatrix [ 1 0 0 1 0 0 ] def 165 | /FontBBox [ 0 0 0 0 ] def 166 | /Encoding 256 array def 167 | 0 1 255 { Encoding exch /.notdef put } for 168 | Encoding 1 /uni590D put 169 | /CharStrings 2 dict dup begin 170 | /.notdef 0 def 171 | /uni590D 1 def 172 | end readonly def 173 | /sfnts [ 174 | <00010000000a008000030020636d61700015f07e000003040000004263767420201a1eec0000 175 | 0348000003046670676dfec8851d0000064c000003a2676c79669ad4d63e000000ac00000258 176 | 6865616477f32f03000009f000000036686865610704029c00000a2800000024686d747807d0 177 | 002100000a4c000000086c6f63610000025800000a540000000c6d61787004a3090e00000a60 178 | 0000002070726570b4934dc000000a80000006dd00060021ff4f03de030a0049006100a900b3 179 | 00bd00c500454025543a971e91b91db4aa1dae9f1d616c1e21851e114d1e4062092d9a090087 180 | 090e596a093424182f33fd322fed2ffd2ffd002ffd2fed2fed2ffddefddefddefd2e2e313001 181 | 14070614171614070614171e011514062322272622070e02232226272e01062322263534373e 182 | 0134272e013d0134363427263534373637363332161716332132151407061417161527323423 183 | 21222e0323220607061514163236373e013307141632140607061514163236373e0133321615 184 | 14070e01151433323e01373632171e01323634262726343e0134262321223436332132363d01 185 | 3426232122070e01232226232215253216142321222634330532161406232122343301321406 186 | 2226343303ab2605020f170504362f41476cb2050603304a791e39450702041309272a473530 187 | 0c3b270307351234111d4c14520e080f01ea6725060410504242fe030c080b132f13362a320b 188 | 4b3a321a060d10bd22614449331b2612040e6c230f09283e36611a72482d0c13123c9f63303d 189 | 51113a19192bfeb50c0a0b014632282b2ffe2514062139230e15040f024e08040cfe6307050c 190 | 019d08040408fe630c0c012d143d262911016c4d1c04050418631f0804010e2d2f4d46450202 191 | 1a1c12302c080303631e3e291c2f0701053148220b13070421311c1d582848101008673c1904 192 | 0508232b73830312070b63521212232731350c07ce39211f51281d2d1344060f29250e040905 193 | 0a272552101a19060619273063220d020d1c2746210a162c2e5b2f2a0c3e3605174207140318 194 | 540512071efefc1027280f000000000200030000000000140001000000000034000400200000 195 | 0004000400010000f001ffff0000f000ffff10000001000000000006000e0000000000020000 196 | 00010000000000600025002500090009000f0015001c0025002b0032003a003e0047004e0055 197 | 005b005f0068006e0075007900810086008c0096000d0013001c0025002d0034003a003e0045 198 | 0049004f00550059005f006300690072007a00800087008d0092000000000000000000250025 199 | 000d000d0014001c00250029003000340039003e004e000d001700200025002c00300038003e 200 | 0000000000000000002c002c002c002c003e00580096002c003e005800960000000000000000 201 | 0021002100080008000c00100017001c002100250029002d0031003e00080017001b00210025 202 | 002900330038003e0045000000000000000000210021000b000b001c00210025002900310035 203 | 003e001c002100250029002d0033003a003e0048000000000000000000210025000900090015 204 | 0019001d00210025002b002f003e004200150019002000250029002d00330037003e0044004e 205 | 000000000000000000250025000c000c00120018001c00210025002a002f00330038003e0042 206 | 0046004b00520056005c00630068000c00120016001b002100250029002d00330038003e0044 207 | 004c005100660080008a0094000000000000000000250025000b000b000f0016001c00200025 208 | 0029002f0036003e00420049004f0013001c00200025002a002e0033003a003e004500490000 209 | 0000000000000025002500080008000c0014001c00210025002900300037003e0046004d0009 210 | 000f0015001a00210025002b00320036003e004d000000000000000000250025000800080012 211 | 0016001b002000250029002f00350039003e004a004e000c00100015001b002000250029002f 212 | 0037003e004700000000000000000025002500130013001c00200025002d003e000800200025 213 | 002b002f0033003e0044000000000000000000250025000a000a000f00190020002500290030 214 | 0034003e004f001500190020002500290030003e0044004e0000000000000000002500250008 215 | 00080016001c00200025002c00300038003e004c0009000f0013001c002000250029002d0033 216 | 0037003e0042004d0000000000000000401e1d1c1b1a191817161514131211100f0e0d0c0b0a 217 | 090807060504030201002c2d2c20b0122b7645535845515820b0122b761b21591b212121592d 218 | 2c2020b0162b20456844b0142b2d2c2020b0162b204520b020616820b0014351582121b00143 219 | 441bb0022342b0032342b0112b66204b5158214bb040605920b0052342b04060b0062342b003 220 | 43b00543b00f2bb00043b00543b00d2b61b00343b00643b00f2bb00043b00643b00d2b618cb0 221 | 0243b00143618cb0008bb00143604459b0142b2d2c2020b0162b204520b020606820b0014353 222 | 582121b00143441bb0022342b0032342b0102b66204b5158214bb040605920b0052342b04060 223 | b0062342b00043b00543b00d2bb00343b00543b00e2b61b00043b00643b00d2bb00343b00643 224 | b00e2b618cb00143b00243618cb0008bb0014323614459b0142b2d2c4520b000234268b00123 225 | 422d2cb00143442d2c4523458a4520b000234260682361b00123422d2c20452068b0022342b0 226 | 00436168b001436020b002435158441b21b00143b002435158b002431bb001435944592d2c20 227 | 452068b0022342b0004361656865b001436020b002435358441b21b00143b002435358b00243 228 | 1bb001435944592d2c204567442d2c204566442d2c634b622d2cb00c2b206623b0022561b004 229 | 435358b04060592d2cb00c2bb02060206623b0022561b004435358b04060592d2cb00c2bb020 230 | 61206623b0022561b004435358b04060592d2cb160024360b00443614b63b00343622d2cb180 231 | 014360b00443614b63b00043622d2cb04461b00863b00423422d2cb10700422d2c45b0034361 232 | 64b007438bb00723422d2cb30044060743608b201d442d2c45b00323422d2c204568442d2c20 233 | 4520b020616820b0014351582121b00143441bb0022342b0032342b0112b66204b5158214bb0 234 | 40605920b0052342b04060b0062342b00343b00543b00f2bb00043b00543b00d2b61b00343b0 235 | 0643b00f2bb00043b00643b00d2b618cb00243b00143618cb0008bb001436044592d2c204520 236 | b020606820b0014353582121b00143441bb0022342b0032342b0102b66204b5158214bb04060 237 | 5920b0052342b04060b0062342b00043b00543b00d2bb00343b00543b00e2b61b00043b00643 238 | b00d2bb00343b00643b00e2b618cb00143b00243618cb0008bb00143236144592d2c2020b016 239 | 2b202045b001435258b00b2b1bb00a2b5945b0022342b0142b2d2c2020b0162b202045b00143 240 | 5258b00b2b1bb00a2b5945b0022342b0142b2d2c20392f2d2c208a208a39392f2f2d00000001 241 | 000000010000a5cd355c5f0f3cf5000303e800000000b1e3938b0000000063225846ffa5ff1e 242 | 0432032a0000000c000100010000000000010000032aff1e000003e8ffa5ff93043200010000 243 | 000000000000000000000000000203e8000003e8002100000000000000000000025800010000 244 | 0002022500120000000000020003000a00200000046b06dd000000004146001501810017017f 245 | 0017017d0002017b0006017c0003017b0005017a000201780006017900030178000501760006 246 | 017700030175000401760005017400020173000601720004017300050171000201800017017e 247 | 001701700002016f0006016e0004016f0005016c0006016d0003016c0005016b0006016a0004 248 | 016b00050169000601680004016900050167b30248124841390163001701610017015f000201 249 | 5d0006015e0003015d0005015c0002015a0006015b000301590004015a000501580006015700 250 | 0401580005016200170160001701560002015500020153000601540003015300050151000601 251 | 5200030150000401510005014f0002014d0006014e0003014db305481248412b014900170147 252 | 00170144000601450003014400050142000601430003014200050140000601410003013f0004 253 | 01400005013e00020148001701460017013d0002013c0002013b0006013a0004013b00050139 254 | 00020138b3024812484147013400170132001701300002012f0002012e0002012d0002012b00 255 | 06012c0003012a0004012b000501280006012900030128000501260006012700030126000501 256 | 3300170131001701250006012400040125000501230006012200040123000501200006012100 257 | 0301200005011e0006011f0003011d0004011e0005011b0006011c0003011a0004011b000501 258 | 19b302481248413101150017011300170111000201100002010e0006010f0003010e0005010c 259 | 0006010b0004010d0003010c0005010a00020108000601070004010900030108000501140017 260 | 011200170106000201050002010400020103000201020002010000060101b203ff04b8010040 261 | 6c05fe02fd02fb06fc03fb05481248f717f517f306f204f305f106f004f105ef06ee04ef05ec 262 | 06ed03eb04ec05ea02e902f617f417e706e803e705e506e603e505e402e302e106e203e004e1 263 | 05df06de04df05dc06dd03dc05481248d817d617d402d302d202d102d006cf04d040ff05cd06 264 | ce03cd05cb06cc03ca04cb05c806c903c704c805c506c603c404c505c302d717d517481248c1 265 | 06c203c105c002be06bf03be05bc06bd03bc05ba06bb03ba05b806b704b903b805b506b404b6 266 | 03b505b306b204b305b106b004b105461246ac17aa17a802a606a703a605a506a404a505a302 267 | a106a203a004a1059f069e049f05ab17a9179c069d039c059a069b039a059806990397049805 268 | 960695049605940248124890178e178c028b068a048b05890287068803870585068404860385 269 | 058f178d17830282068104820580027e067d047f037e057c0248124878177617740273067204 270 | 7305710270026e066d046f036e056c026b02771775176a0240ff680669036704680565066404 271 | 66036505630262026006610360054812485c175a1758025702560255025b1759174812485402 272 | 5302520251024612464d174b17490648044905460647034605450644044505430242024c174a 273 | 17410240063f0440053d063e033d053b063c033b053a02390238024812483417321730022e06 274 | 2f032d042e052b062c032a042b05290227062803270525062603240425052206230322052006 275 | 210320051e061f031d041e051c061b041c05331731171a021906180419051606170316051406 276 | 15031405120613031205100611030f0410050d060e030d050b060c030b0509060a0308040905 277 | 060605040703060548124813c00501b80778858d8d4b5058b101018e1bb100018e592b01762b 278 | 2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b 279 | 2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b2b2b 280 | 2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b762b2b2b002b2b2b2b 281 | 2b2b01762b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b0176 282 | 2b2b2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b2b2b 283 | 2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b2b2b2b 284 | 2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b762b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b 285 | 2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b002b2b2b 286 | 2b2b2b2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b 287 | 2b2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b002b2b 288 | 2b2b2b2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b 289 | 2b2b01762b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b01762b 290 | 2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b00 291 | 000000> 292 | ] def 293 | /f-1-0 currentdict end definefont pop 294 | %%Page: 1 1 295 | %%BeginPageSetup 296 | %%PageBoundingBox: 0 -1 698 642 297 | %%EndPageSetup 298 | q 0 -1 698 643 rectclip q 299 | 0 641.313 698 -642 re W n 300 | 0 g 301 | BT 302 | 430.134526 0 205.820927 287.831601 36.068278 423.13694 Tm 303 | /f-0-0 1 Tf 304 | <01>Tj 305 | ET 306 | BT 307 | 435.281301 0 -293.90505 353.894559 214.293846 62.639328 Tm 308 | /f-1-0 1 Tf 309 | <01>Tj 310 | ET 311 | Q Q 312 | showpage 313 | %%Trailer 314 | count op_count sub {pop} repeat 315 | countdictstack dict_count sub {end} repeat 316 | cairo_eps_state restore 317 | %%EOF 318 | -------------------------------------------------------------------------------- /figures/golfer.eps: -------------------------------------------------------------------------------- 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: 13 37 571 720 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 | -------------------------------------------------------------------------------- /figures/qingming.eps: -------------------------------------------------------------------------------- 1 | %!PS-Adobe-3.0 EPSF-3.0 2 | %%Creator: cairo 1.10.2 (http://cairographics.org) 3 | %%CreationDate: Sat May 19 23:01:19 2012 4 | %%Pages: 1 5 | %%BoundingBox: 0 -1 671 645 6 | %%DocumentData: Clean7Bit 7 | %%LanguageLevel: 2 8 | %%EndComments 9 | %%BeginProlog 10 | /cairo_eps_state save def 11 | /dict_count countdictstack def 12 | /op_count count 1 sub def 13 | userdict begin 14 | /q { gsave } bind def 15 | /Q { grestore } bind def 16 | /cm { 6 array astore concat } bind def 17 | /w { setlinewidth } bind def 18 | /J { setlinecap } bind def 19 | /j { setlinejoin } bind def 20 | /M { setmiterlimit } bind def 21 | /d { setdash } bind def 22 | /m { moveto } bind def 23 | /l { lineto } bind def 24 | /c { curveto } bind def 25 | /h { closepath } bind def 26 | /re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto 27 | 0 exch rlineto 0 rlineto closepath } bind def 28 | /S { stroke } bind def 29 | /f { fill } bind def 30 | /f* { eofill } bind def 31 | /n { newpath } bind def 32 | /W { clip } bind def 33 | /W* { eoclip } bind def 34 | /BT { } bind def 35 | /ET { } bind def 36 | /pdfmark where { pop globaldict /?pdfmark /exec load put } 37 | { globaldict begin /?pdfmark /pop load def /pdfmark 38 | /cleartomark load def end } ifelse 39 | /BDC { mark 3 1 roll /BDC pdfmark } bind def 40 | /EMC { mark /EMC pdfmark } bind def 41 | /cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def 42 | /Tj { show currentpoint cairo_store_point } bind def 43 | /TJ { 44 | { 45 | dup 46 | type /stringtype eq 47 | { show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse 48 | } forall 49 | currentpoint cairo_store_point 50 | } bind def 51 | /cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore 52 | cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def 53 | /Tf { pop /cairo_font exch def /cairo_font_matrix where 54 | { pop cairo_selectfont } if } bind def 55 | /Td { matrix translate cairo_font_matrix matrix concatmatrix dup 56 | /cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point 57 | /cairo_font where { pop cairo_selectfont } if } bind def 58 | /Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def 59 | cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def 60 | /g { setgray } bind def 61 | /rg { setrgbcolor } bind def 62 | /d1 { setcachedevice } bind def 63 | %%EndProlog 64 | 11 dict begin 65 | /FontType 42 def 66 | /FontName /STCaiyun def 67 | /PaintType 0 def 68 | /FontMatrix [ 1 0 0 1 0 0 ] def 69 | /FontBBox [ 0 0 0 0 ] def 70 | /Encoding 256 array def 71 | 0 1 255 { Encoding exch /.notdef put } for 72 | Encoding 1 /uni6E05 put 73 | /CharStrings 2 dict dup begin 74 | /.notdef 0 def 75 | /uni6E05 1 def 76 | end readonly def 77 | /sfnts [ 78 | <00010000000a008000030020636d61700015f07e000003f80000004263767420201a1eec0000 79 | 043c000003046670676dfec8851d00000740000003a2676c79662dc6dbb0000000ac0000034c 80 | 6865616477f32f0300000ae400000036686865610704029c00000b1c00000024686d747807d0 81 | 003600000b40000000086c6f63610000034c00000b480000000c6d61787004a3090e00000b54 82 | 0000002070726570b4934dc000000b74000006dd00080036ff4e03f2030a0056009b00b400cb 83 | 00f000fc010601190073401478526f821d6b8761921d658c571ed0f61ef1fd1eb80101b6004d 84 | 1e757d2f1eb80113400fd61e25a71e462309d91c09ead40929b80108400ccc09167109035d09 85 | 109409b8182fed2fed2fed2ffd2f33fd2ffddefd002fed2ffd2fed2f33fd322ffddefd2ffdde 86 | 32fd32de32fd322e2e313001321615140607061716150714171e011514070e011511140e0122 87 | 2e01343f0134221d01140622263d0134220f010e0122263534373e01342e01272635343e0134 88 | 272635343633321e013237363b01323736333217163303321e0133323534262b0122343b0132 89 | 3634262b0122343b01323634262b012227262207062b01220614163b0132142b01220614163b 90 | 013215142b012215141632373e0133273436342e013537342e0123220615141e021716171632 91 | 360734272634363534262206151417161716323736331732011134262b01221511141632363d 92 | 01343b0132363317321614062226232206141e01323e0103321614062b012226343633173216 93 | 142b01222634330735362e0123220e0107061416323e04037a32350d0f090102010a17132c08 94 | 05265f81361901020f387d390404251e3243722334300a3109452c1e08304d3521491c060517 95 | 386b0d07214c4e1e050d05333f240d1b1a21980909751714131875090980291922208308040f 96 | 8e0f030989231f1f23850a0a7c191314187c0a0a9d3f141c0a184234b404160d011f421a2839 97 | 0e2314112737261b052d01060968403a351d2104070b1623140a025a4144fb85275927093c08 98 | 1e0f270f0707101d071814162a694c19b6090605089a0a06080c9a050409a5050409cf010735 99 | 122e29272c1c54291a1a381b0f02db1f482925090608111219050408292a6c0b020609fee641 100 | 310d132e380a11080a293b2c2e392e0806392d284a372b324a64080a2205283c224b1807051e 101 | 372f672513041108272807fe8d152c48271616113910171c521509262708165617171236120a 102 | 0c3d20230b1b16821812080e2520230e13244e20101a19110306231809a602041a301c04103e 103 | 531c2620101b020b1501fe9e01063c3975fee4251d1d254d0b12010718050524431f08092201 104 | 3206150605140860061e061e0e840e0b1067483e2943350d1b552f2600000002000300000000 105 | 001400010000000000340004002000000004000400010000f001ffff0000f000ffff10000001 106 | 000000000006000e000000000002000000010000000000600025002500090009000f0015001c 107 | 0025002b0032003a003e0047004e0055005b005f0068006e0075007900810086008c0096000d 108 | 0013001c0025002d0034003a003e00450049004f00550059005f006300690072007a00800087 109 | 008d0092000000000000000000250025000d000d0014001c00250029003000340039003e004e 110 | 000d001700200025002c00300038003e0000000000000000002c002c002c002c003e00580096 111 | 002c003e0058009600000000000000000021002100080008000c00100017001c002100250029 112 | 002d0031003e00080017001b00210025002900330038003e0045000000000000000000210021 113 | 000b000b001c00210025002900310035003e001c002100250029002d0033003a003e00480000 114 | 000000000000002100250009000900150019001d00210025002b002f003e0042001500190020 115 | 00250029002d00330037003e0044004e000000000000000000250025000c000c00120018001c 116 | 00210025002a002f00330038003e00420046004b00520056005c00630068000c00120016001b 117 | 002100250029002d00330038003e0044004c005100660080008a009400000000000000000025 118 | 0025000b000b000f0016001c002000250029002f0036003e00420049004f0013001c00200025 119 | 002a002e0033003a003e0045004900000000000000000025002500080008000c0014001c0021 120 | 0025002900300037003e0046004d0009000f0015001a00210025002b00320036003e004d0000 121 | 000000000000002500250008000800120016001b002000250029002f00350039003e004a004e 122 | 000c00100015001b002000250029002f0037003e004700000000000000000025002500130013 123 | 001c00200025002d003e000800200025002b002f0033003e0044000000000000000000250025 124 | 000a000a000f001900200025002900300034003e004f001500190020002500290030003e0044 125 | 004e000000000000000000250025000800080016001c00200025002c00300038003e004c0009 126 | 000f0013001c002000250029002d00330037003e0042004d0000000000000000401e1d1c1b1a 127 | 191817161514131211100f0e0d0c0b0a090807060504030201002c2d2c20b0122b7645535845 128 | 515820b0122b761b21591b212121592d2c2020b0162b20456844b0142b2d2c2020b0162b2045 129 | 20b020616820b0014351582121b00143441bb0022342b0032342b0112b66204b5158214bb040 130 | 605920b0052342b04060b0062342b00343b00543b00f2bb00043b00543b00d2b61b00343b006 131 | 43b00f2bb00043b00643b00d2b618cb00243b00143618cb0008bb00143604459b0142b2d2c20 132 | 20b0162b204520b020606820b0014353582121b00143441bb0022342b0032342b0102b66204b 133 | 5158214bb040605920b0052342b04060b0062342b00043b00543b00d2bb00343b00543b00e2b 134 | 61b00043b00643b00d2bb00343b00643b00e2b618cb00143b00243618cb0008bb00143236144 135 | 59b0142b2d2c4520b000234268b00123422d2cb00143442d2c4523458a4520b0002342606823 136 | 61b00123422d2c20452068b0022342b000436168b001436020b002435158441b21b00143b002 137 | 435158b002431bb001435944592d2c20452068b0022342b0004361656865b001436020b00243 138 | 5358441b21b00143b002435358b002431bb001435944592d2c204567442d2c204566442d2c63 139 | 4b622d2cb00c2b206623b0022561b004435358b04060592d2cb00c2bb02060206623b0022561 140 | b004435358b04060592d2cb00c2bb02061206623b0022561b004435358b04060592d2cb16002 141 | 4360b00443614b63b00343622d2cb180014360b00443614b63b00043622d2cb04461b00863b0 142 | 0423422d2cb10700422d2c45b003436164b007438bb00723422d2cb30044060743608b201d44 143 | 2d2c45b00323422d2c204568442d2c204520b020616820b0014351582121b00143441bb00223 144 | 42b0032342b0112b66204b5158214bb040605920b0052342b04060b0062342b00343b00543b0 145 | 0f2bb00043b00543b00d2b61b00343b00643b00f2bb00043b00643b00d2b618cb00243b00143 146 | 618cb0008bb001436044592d2c204520b020606820b0014353582121b00143441bb0022342b0 147 | 032342b0102b66204b5158214bb040605920b0052342b04060b0062342b00043b00543b00d2b 148 | b00343b00543b00e2b61b00043b00643b00d2bb00343b00643b00e2b618cb00143b00243618c 149 | b0008bb00143236144592d2c2020b0162b202045b001435258b00b2b1bb00a2b5945b0022342 150 | b0142b2d2c2020b0162b202045b001435258b00b2b1bb00a2b5945b0022342b0142b2d2c2039 151 | 2f2d2c208a208a39392f2f2d000000010000000100007fe91ede5f0f3cf5000303e800000000 152 | b1e3938b0000000063225846ffa5ff1e0432032a0000000c000100010000000000010000032a 153 | ff1e000003e8ffa5ff93043200010000000000000000000000000000000203e8000003e80036 154 | 00000000000000000000034c000100000002022500120000000000020003000a00200000046b 155 | 06dd000000004146001501810017017f0017017d0002017b0006017c0003017b0005017a0002 156 | 0178000601790003017800050176000601770003017500040176000501740002017300060172 157 | 0004017300050171000201800017017e001701700002016f0006016e0004016f0005016c0006 158 | 016d0003016c0005016b0006016a0004016b00050169000601680004016900050167b3024812 159 | 4841390163001701610017015f0002015d0006015e0003015d0005015c0002015a0006015b00 160 | 0301590004015a00050158000601570004015800050162001701600017015600020155000201 161 | 530006015400030153000501510006015200030150000401510005014f0002014d0006014e00 162 | 03014db305481248412b01490017014700170144000601450003014400050142000601430003 163 | 014200050140000601410003013f000401400005013e00020148001701460017013d0002013c 164 | 0002013b0006013a0004013b0005013900020138b30248124841470134001701320017013000 165 | 02012f0002012e0002012d0002012b0006012c0003012a0004012b0005012800060129000301 166 | 2800050126000601270003012600050133001701310017012500060124000401250005012300 167 | 060122000401230005012000060121000301200005011e0006011f0003011d0004011e000501 168 | 1b0006011c0003011a0004011b00050119b30248124841310115001701130017011100020110 169 | 0002010e0006010f0003010e0005010c0006010b0004010d0003010c0005010a000201080006 170 | 0107000401090003010800050114001701120017010600020105000201040002010300020102 171 | 0002010000060101b203ff04b80100406c05fe02fd02fb06fc03fb05481248f717f517f306f2 172 | 04f305f106f004f105ef06ee04ef05ec06ed03eb04ec05ea02e902f617f417e706e803e705e5 173 | 06e603e505e402e302e106e203e004e105df06de04df05dc06dd03dc05481248d817d617d402 174 | d302d202d102d006cf04d040ff05cd06ce03cd05cb06cc03ca04cb05c806c903c704c805c506 175 | c603c404c505c302d717d517481248c106c203c105c002be06bf03be05bc06bd03bc05ba06bb 176 | 03ba05b806b704b903b805b506b404b603b505b306b204b305b106b004b105461246ac17aa17 177 | a802a606a703a605a506a404a505a302a106a203a004a1059f069e049f05ab17a9179c069d03 178 | 9c059a069b039a059806990397049805960695049605940248124890178e178c028b068a048b 179 | 05890287068803870585068404860385058f178d17830282068104820580027e067d047f037e 180 | 057c02481248781776177402730672047305710270026e066d046f036e056c026b0277177517 181 | 6a0240ff68066903670468056506640466036505630262026006610360054812485c175a1758 182 | 025702560255025b17591748124854025302520251024612464d174b17490648044905460647 183 | 034605450644044505430242024c174a17410240063f0440053d063e033d053b063c033b053a 184 | 02390238024812483417321730022e062f032d042e052b062c032a042b052902270628032705 185 | 25062603240425052206230322052006210320051e061f031d041e051c061b041c0533173117 186 | 1a02190618041905160617031605140615031405120613031205100611030f0410050d060e03 187 | 0d050b060c030b0509060a0308040905060605040703060548124813c00501b80778858d8d4b 188 | 5058b101018e1bb100018e592b01762b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b 189 | 2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b 190 | 2b2b2b2b2b2b01762b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b 191 | 01762b2b2b2b2b762b2b2b002b2b2b2b2b2b01762b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b00 192 | 2b2b2b2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b 193 | 2b2b2b2b2b2b01762b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b 194 | 2b2b2b2b2b01762b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b762b2b 195 | 2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b2b2b2b 196 | 2b2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b 197 | 2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b2b2b 198 | 2b2b2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b 199 | 2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b002b 200 | 2b2b2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b 201 | 2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b00000000> 202 | ] def 203 | /f-0-0 currentdict end definefont pop 204 | 11 dict begin 205 | /FontType 42 def 206 | /FontName /STHupo def 207 | /PaintType 0 def 208 | /FontMatrix [ 1 0 0 1 0 0 ] def 209 | /FontBBox [ 0 0 0 0 ] def 210 | /Encoding 256 array def 211 | 0 1 255 { Encoding exch /.notdef put } for 212 | Encoding 1 /uni660E put 213 | /CharStrings 2 dict dup begin 214 | /.notdef 0 def 215 | /uni660E 1 def 216 | end readonly def 217 | /sfnts [ 218 | <00010000000a008000030020636d61700015f07e000001c400000042637674201af41bc00000 219 | 0208000001fc6670676dfec8851d00000404000003a2676c79666ce63794000000ac00000118 220 | 6865616477f8dd4e000007a80000003668686561070102b0000007e000000024686d747807d0 221 | 002a00000804000000086c6f6361000001180000080c0000000c6d617870033c057b00000818 222 | 00000020707265706c1a18cc00000838000003910006002aff5603bb02f8002b003600410051 223 | 005d0069000ab321173e33182f33fd310514062b01222634363332363d01342b012206140e02 224 | 222635343e0133323635113427263534332132161507323634262b0122141633173236342b01 225 | 22061416330714062b012226351134363b013216150735342b01221d01143b01321535342b01 226 | 221d01143b013203bb393d78362f293919140e7a0e08273f2e42621a111849441b084301343c 227 | 3ace0a06060a6d0e05096d0a06106d08060509b12f3ccf3b30313acf3a31a613311414311313 228 | 31141431131d4641316e2c1013350e102f6c6e1e392713300d595c019d551f09091a41456f09 229 | 1e082609d30925081e088c4636374501b445373646742015152015ce20161620160000000002 230 | 000300000000001400010000000000340004002000000004000400010000f001ffff0000f000 231 | ffff10000001000000000006000e000000000002000000010000000000600092009000060006 232 | 000d0015001c0023002c00320038003e0046004a0050005700600068006e0075007e00820088 233 | 008c00920008000f001300190020002800310037003d0043004a004e0054005a005f0065006b 234 | 00720078007d0085009000960000000000000000003e003e003e003e003e0000000000000000 235 | 002c002c002c002c003e00580096002c003e005800960000000000000000003e002e002d002d 236 | 0033003e002a002e0033003a00400046004b004f0000000000000000003f0040003000300039 237 | 003f00440048004f002c00320036003c00400044004800500000000000000000003e003e0011 238 | 00110039003e0046004a004f003e0046004b00000000000000000060009300360036003e0050 239 | 005b0060006400690072007600900013001c002400290030003e0046004a004e00520058005d 240 | 00630069006d0071007c00810088008d0093000000000000000000290026002900290036003e 241 | 0044004c005000260030003a003e004b00500000000000000000003e003e002e002e0032003e 242 | 003e004b0000000000000000003e003e001e001e003e003e0000000000000000003e003e003e 243 | 003e004c003e0047004b0000000000000000003e003e00130013003e003a003e0043004b0000 244 | 000000000000002500250025002500300037003e004b00250029003e0044004c000000000000 245 | 0000401e1d1c1b1a191817161514131211100f0e0d0c0b0a090807060504030201002c2d2c20 246 | b0122b7645535845515820b0122b761b21591b212121592d2c2020b0162b20456844b0142b2d 247 | 2c2020b0162b204520b020616820b0014351582121b00143441bb0022342b0032342b0112b66 248 | 204b5158214bb040605920b0052342b04060b0062342b00343b00543b00f2bb00043b00543b0 249 | 0d2b61b00343b00643b00f2bb00043b00643b00d2b618cb00243b00143618cb0008bb0014360 250 | 4459b0142b2d2c2020b0162b204520b020606820b0014353582121b00143441bb0022342b003 251 | 2342b0102b66204b5158214bb040605920b0052342b04060b0062342b00043b00543b00d2bb0 252 | 0343b00543b00e2b61b00043b00643b00d2bb00343b00643b00e2b618cb00143b00243618cb0 253 | 008bb0014323614459b0142b2d2c4520b000234268b00123422d2cb00143442d2c4523458a45 254 | 20b000234260682361b00123422d2c20452068b0022342b000436168b001436020b002435158 255 | 441b21b00143b002435158b002431bb001435944592d2c20452068b0022342b0004361656865 256 | b001436020b002435358441b21b00143b002435358b002431bb001435944592d2c204567442d 257 | 2c204566442d2c634b622d2cb00c2b206623b0022561b004435358b04060592d2cb00c2bb020 258 | 60206623b0022561b004435358b04060592d2cb00c2bb02061206623b0022561b004435358b0 259 | 4060592d2cb160024360b00443614b63b00343622d2cb180014360b00443614b63b00043622d 260 | 2cb04461b00863b00423422d2cb10700422d2c45b003436164b007438bb00723422d2cb30044 261 | 060743608b201d442d2c45b00323422d2c204568442d2c204520b020616820b0014351582121 262 | b00143441bb0022342b0032342b0112b66204b5158214bb040605920b0052342b04060b00623 263 | 42b00343b00543b00f2bb00043b00543b00d2b61b00343b00643b00f2bb00043b00643b00d2b 264 | 618cb00243b00143618cb0008bb001436044592d2c204520b020606820b0014353582121b001 265 | 43441bb0022342b0032342b0102b66204b5158214bb040605920b0052342b04060b0062342b0 266 | 0043b00543b00d2bb00343b00543b00e2b61b00043b00643b00d2bb00343b00643b00e2b618c 267 | b00143b00243618cb0008bb00143236144592d2c2020b0162b202045b001435258b00b2b1bb0 268 | 0a2b5945b0022342b0142b2d2c2020b0162b202045b001435258b00b2b1bb00a2b5945b00223 269 | 42b0142b2d2c20392f2d2c208a208a39392f2f2d000000010000000100009fb1a7d25f0f3cf5 270 | 000303e800000000b1e38fa00000000063210a8dffbdff17042103200000000c000100010000 271 | 0000000100000320ff17000003e8ffbdffae0421000100000000000000000000000000000002 272 | 03e8000003e8002a00000000000000000000011800010000000201cd00110000000000020003 273 | 000a00200000030503a200000000403c15fd17fb17f902f706f803f705f506f603f505fc17fa 274 | 17f402f302f202f102f002481248ec17ea17e802e606e504e703e605eb17e917e402e3024812 275 | 40ff48df17dd17db06da04db05d902de17dc17d802d702481248d317d117cf02d217d017ce02 276 | cd02481248c917c717c502c402c817c617c302c206c104c205481248bd17bb17b806b903b805 277 | b706b604b705b502b402bc17ba17b206b303b205b006b103b005af02ae02481248aa17a817a6 278 | 06a504a605a402a306a204a305a006a103a0059e069d049f039e059b069c039b0599069a0398 279 | 0499059702960294069503940593029202a917a71748124891028f0690038f058e028c068b04 280 | 8d038c058a0289028802461246841782177f0680037f057e02831781177c067d037b047c057a 281 | 0679047a0578024812487417721770026f026d066c046e036d056b066a40ff046b0569027317 282 | 711768026702650666036404650563024812485f175d175b065a045b05590257065803570555 283 | 065404560355055e175c1753025206510452054812484d174b1749024802470246024c174a17 284 | 48124845024402430242024612463e173c173a023d173b173902481248351733173006310330 285 | 052e062f032e052c062d032b042c0529062a0329052706260428032705240623042503240522 286 | 062104220520061f0420051e061d041e051b061c031b05341732171a0619041a051706180317 287 | 05150616031404150512061303120510060f04110310050e060d040e050b060c030a040b0509 288 | 0608040905060605040703060548124813c00501b80778858d8d4b5058b101018e1bb100018e 289 | 592b01762b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b 290 | 002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b0176 291 | 2b2b2b2b002b2b2b01762b2b2b2b2b762b2b2b002b2b2b2b2b2b01762b2b2b2b2b2b2b002b2b 292 | 2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b0176 293 | 2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b01762b2b2b2b2b2b2b2b2b2b2b2b2b762b2b2b00 294 | 2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b 295 | 2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b01762b2b2b2b2b2b2b002b2b2b2b01762b2b2b2b2b00 296 | 2b2b2b01762b2b2b2b2b002b2b2b2b2b2b01762b2b2b2b2b002b2b2b2b2b2b2b01762b2b2b2b 297 | 2b2b2b2b002b2b2b2b2b2b2b2b2b2b00000000> 298 | ] def 299 | /f-1-0 currentdict end definefont pop 300 | %%Page: 1 1 301 | %%BeginPageSetup 302 | %%PageBoundingBox: 0 -1 671 645 303 | %%EndPageSetup 304 | q 0 -1 671 646 rectclip q 305 | 0 644.593 671 -645 re W n 306 | 0 g 307 | BT 308 | 430.134526 0 205.820927 287.831601 26.860456 420.659666 Tm 309 | /f-0-0 1 Tf 310 | <01>Tj 311 | ET 312 | BT 313 | 435.281301 0 -293.90505 353.894559 205.086023 60.162054 Tm 314 | /f-1-0 1 Tf 315 | <01>Tj 316 | ET 317 | Q Q 318 | showpage 319 | %%Trailer 320 | count op_count sub {pop} repeat 321 | countdictstack dict_count sub {end} repeat 322 | cairo_eps_state restore 323 | %%EOF 324 | -------------------------------------------------------------------------------- /figures/zzu.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tuxify/zzuthesis/7565f04df6ee5c935021b2d91582c60b5a2d5064/figures/zzu.pdf -------------------------------------------------------------------------------- /figures/zzu.tex: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% File: zzu.tex 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2019-11-04 14:01 6 | %% Last modified: 2019-11-04 14:09 7 | %%================================================ 8 | \documentclass[border=5pt]{standalone} 9 | 10 | \usepackage{ctex} 11 | \setCJKfamilyfont{xingkai}{STXingkai}% 行楷 STXingkai 12 | \newcommand{\xingkai}{\CJKfamily{xingkai}} 13 | 14 | \begin{document} 15 | 16 | { 17 | \ziju{0.5}\zihao{0}\xingkai 18 | 郑州大学 19 | } 20 | 21 | \end{document} -------------------------------------------------------------------------------- /figures/zzubachelor.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tuxify/zzuthesis/7565f04df6ee5c935021b2d91582c60b5a2d5064/figures/zzubachelor.pdf -------------------------------------------------------------------------------- /figures/zzubachelor.tex: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: zzubachelor.tex 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2020-01-03 23:14 6 | %% Last modified: 2020-01-03 23:24 7 | %%================================================ 8 | \documentclass[border=5pt]{standalone} 9 | 10 | \usepackage{ctex} 11 | \let\fangsong\relax%本科毕业设计标题中加粗仿宋字体 12 | \newCJKfontfamily\fangsong{FangSong}[AutoFakeBold] 13 | 14 | \begin{document} 15 | 16 | { 17 | \zihao{1}\bfseries\fangsong 18 | 郑州大学毕业设计(论文) 19 | } 20 | 21 | \end{document} -------------------------------------------------------------------------------- /figures/zzulogo.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tuxify/zzuthesis/7565f04df6ee5c935021b2d91582c60b5a2d5064/figures/zzulogo.pdf -------------------------------------------------------------------------------- /main.tex: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: main.tex 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2012-01-08 13:09 6 | %% Last modified: 2020-04-05 21:01 7 | %%================================================ 8 | \documentclass[master]{zzuthesis} 9 | % \documentclass[% 10 | % bachelor|master|doctor% mandatory option 11 | % ]{zzuthesis} 12 | % 自定义宏包 13 | \usepackage{docutils} 14 | 15 | % 图形文件路径 16 | \graphicspath{{figures/}} 17 | 18 | \begin{document} 19 | 20 | % 封面、目录、符号对照表等 21 | \frontmatter 22 | 23 | \input{data/cover}%封面 24 | \input{data/abstract}%摘要 25 | \makecover 26 | 27 | \tableofcontents%目录 28 | 29 | \listoffigures%插图清单,本科论文重新定义为\relax 30 | \listoftables%表格清单,本科论文重新定义为\relax 31 | 32 | \makeatletter%符号对照表 33 | \ifzzu@bachelor\else\include{data/denotation}\fi%本科论文不要求 34 | \makeatother 35 | 36 | % 正文部分 37 | \mainmatter 38 | \include{data/chap01} 39 | \include{data/chap02} 40 | \include{data/chap03} 41 | \include{data/chap04} 42 | 43 | % 参考文献、致谢、附录等 44 | \backmatter 45 | 46 | % \bibliographystyle{gbt7714-unsrt.bst}%符合国标 GB/T 7714-2015 的文献风格 47 | \bibliographystyle{zzubib.bst}%学校规范中示例文献风格 48 | \bibliography{ref/refs}%参考文献 49 | 50 | % 附录 51 | % 研究生论文:综述 52 | % \makeatletter 53 | % \ifzzu@bachelor\else 54 | % \include{data/review} 55 | % \fi 56 | % \makeatother 57 | 58 | \makeatletter%致谢,研究生论文中在参考文献后,附录前 59 | \ifzzu@bachelor\else 60 | \include{data/ack} 61 | \fi 62 | \makeatother 63 | 64 | % 附录 65 | % 本科生论文三个附录,分别是附表,外文翻译和外文原文 66 | % 研究生论文无具体要求 67 | \makeatletter 68 | \ifzzu@bachelor 69 | \begin{appendix} 70 | \input{data/app01} 71 | \input{data/app02} 72 | \input{data/app03} 73 | \end{appendix} 74 | \fi 75 | \makeatother 76 | 77 | \makeatletter%个人简历 78 | \ifzzu@bachelor\else 79 | \include{data/resume}%本科论文无要求 80 | \fi 81 | \makeatother 82 | 83 | \makeatletter%致谢,本科论文在最后 84 | \ifzzu@bachelor 85 | \include{data/ack} 86 | \else\fi 87 | \makeatother 88 | 89 | \end{document} 90 | -------------------------------------------------------------------------------- /ref/refs.bib: -------------------------------------------------------------------------------- 1 | @article{chen2001, 2 | author = {陈建军 and 车建文 and 陈勇}, 3 | title = {具有频率和振型概率约束的工程结构动力优化设计}, 4 | journal = {计算力学学报}, 5 | year = {2001}, 6 | volume = {18}, 7 | number = {1}, 8 | pages = {74$\sim$80} 9 | } 10 | 11 | @article{nadkarni1992, 12 | author = {Nadkarni, M A and Nair, C K K and Pandey, V N and others}, 13 | title = {Characterzation of alpha-galactosidase from corynebacterium 14 | murisepticum and mechanism of its induction}, 15 | journal = {J Gen App Microbiol}, 16 | year = {1992}, 17 | volume = {38}, 18 | pages = {223$\sim$234} 19 | } 20 | 21 | @article{hua1973, 22 | author = {华罗庚 and 王元}, 23 | title = {论一致分布与近似分析:数论方法(I)}, 24 | journal = {中国科学}, 25 | year = {1973}, 26 | number = {4}, 27 | pages = {339$\sim$357} 28 | } 29 | 30 | @book{zhu1973, 31 | author = {竺可桢}, 32 | title = {物候学}, 33 | address = {北京}, 34 | publisher = {科学出版社}, 35 | year = {1973}, 36 | pages = {104$\sim$107} 37 | } 38 | 39 | @book{huo1981, 40 | author = {霍夫斯塔主编}, 41 | title = {禽病学:下册}, 42 | edition = {第7版}, 43 | translator = {胡祥壁}, 44 | address = {北京}, 45 | publisher = {农业出版社}, 46 | year = {1981}, 47 | pages = {798$\sim$799} 48 | } 49 | 50 | @book{timoshenko1959, 51 | author = {Timoshenko, S P}, 52 | title = {Theory of plate and shells}, 53 | edition = {2nd}, 54 | address = {New York}, 55 | publisher = {McGraw-Hill}, 56 | year = {1959}, 57 | pages = {17$\sim$36} 58 | } 59 | 60 | TODO: editor 61 | @incollection{zhang1991, 62 | author = {张全福 and 王里青}, 63 | title = {“百家争鸣”与理工科学报编辑工作}, 64 | editor = {{见:郑福寿主编}}, 65 | booktitle = {学报编辑论丛:第2集}, 66 | address = {南京}, 67 | publisher = {河海大学出版社}, 68 | year = {1991}, 69 | pages = {1$\sim$4} 70 | } 71 | 72 | TODO: editor 73 | @incollection{dupont1974, 74 | author = {Dupont, B}, 75 | title = {Bone marrow transplantation in severe combined immunodeficiency 76 | with an unrclated MLC compatible donor}, 77 | editor = {{In: White H J, Smith R, eds}}, 78 | booktitle = {Proceedings of the Third Annual Meeting of the International 79 | Society for Experimental Hematology}, 80 | address = {Houston}, 81 | publisher = {International Society for Experimental Hematology}, 82 | year = {1974}, 83 | pages = {44$\sim$46} 84 | } 85 | 86 | @phdthesis{ding2001, 87 | author = {丁光莹}, 88 | title = {钢筋混凝土框架结构非线性反应分析的随机模拟分析}, 89 | address = {上海}, 90 | school = {同济大学}, 91 | year = {2001} 92 | } 93 | 94 | @phdthesis{cairns1965, 95 | author = {Cairns, R B}, 96 | title = {Infrared spectroscopic studies on solid oxygen}, 97 | address = {Berkeley}, 98 | school = {Univ of California}, 99 | year = {1965} 100 | } 101 | 102 | @patent{patent, 103 | author = {姜锡洲}, 104 | title = {一种温热外敷药制备方法}, 105 | country = {中国专利}, 106 | patentid = {881056073}, 107 | date = {1989--07--26} 108 | } 109 | 110 | @standard{standard, 111 | author = {全国文献工作标准化技术委员会第六分委员会}, 112 | title = {GB 6447---86 文摘编写规则}, 113 | address = {北京}, 114 | publisher = {中国标准出版社}, 115 | year = {1986} 116 | } 117 | 118 | TODO: , 等 119 | @online{wang2005, 120 | author = {王文惠 and 孟兵 and others}, 121 | title = {利用不变量进行基于内容的图像检索}, 122 | TypeofLit = {EB}, 123 | year = {2005}, 124 | url = {http://www.image2003.com/paper/down/2005528115935222.pdf} 125 | } 126 | -------------------------------------------------------------------------------- /spine.tex: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: spine.tex 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2012-03-02 20:24 6 | %% Last modified: 2019-10-31 21:26 7 | %%================================================ 8 | \documentclass{ctexart} 9 | \usepackage[papersize={8.66in,11.69in}, 10 | left=0cm, right=0cm,top=5cm,bottom=5cm]{geometry} 11 | \usepackage{graphicx} 12 | 13 | \newcommand{\envert}[1]{\raisebox{-.4em}{#1}} 14 | 15 | \providecommand{\thesistitle}{郑州大学学位论文 \envert{\LaTeX} 模板使用示例} 16 | \providecommand{\thesisauthor}{赵钱孙} 17 | \providecommand{\thesisnumber}{\raisebox{-1.2em}{20080800901}} 18 | 19 | \pagestyle{empty} 20 | \begin{document} 21 | 22 | \flushright 23 | \rotatebox{-90}{\thesistitle} 24 | \vfill 25 | \vspace*{5em}\rotatebox{-90}{\thesisauthor} 26 | \vfill 27 | \rotatebox{-90}{\thesisnumber} 28 | 29 | \end{document} 30 | -------------------------------------------------------------------------------- /zzubib.bst: -------------------------------------------------------------------------------- 1 | %% 2 | %% This is file `zzubib.bst', 3 | %% generated with the docstrip utility. 4 | %% 5 | %% BibTeX standard bibliography style `zzubib.bst' derived from 6 | %% 7 | %% gbt7714-unsrt.bst 8 | %% 9 | %% This file is part of `zzuthesis' package. 10 | %% ------------------------------------------------------------------- 11 | %% GB/T 7714-2015 BibTeX Style 12 | %% https://github.com/CTeX-org/gbt7714-bibtex-style 13 | %% Version: 2019/03/21 v1.1.1 14 | %% ------------------------------------------------------------------- 15 | %% Copyright (C) 2016-2019 by Zeping Lee <zepinglee AT gmail.com> 16 | %% ------------------------------------------------------------------- 17 | %% This file may be distributed and/or modified under the 18 | %% conditions of the LaTeX Project Public License, either version 1.3c 19 | %% of this license or (at your option) any later version. 20 | %% The latest version of this license is in 21 | %% https://www.latex-project.org/lppl.txt 22 | %% and version 1.3c or later is part of all distributions of LaTeX 23 | %% version 2005/12/01 or later. 24 | %% ------------------------------------------------------------------- 25 | INTEGERS { 26 | uppercase.name 27 | max.num.authors 28 | period.between.author.year 29 | sentence.case.title 30 | link.title 31 | show.mark 32 | slash.for.extraction 33 | in.booktitle 34 | italic.jounal 35 | bold.journal.volume 36 | show.missing.address.publisher 37 | show.url 38 | show.doi 39 | show.note 40 | } 41 | 42 | FUNCTION {load.config} 43 | { 44 | #1 'uppercase.name := 45 | #0 'uppercase.name := 46 | #3 'max.num.authors := 47 | #1 'sentence.case.title := 48 | #0 'link.title := 49 | #1 'show.mark := 50 | #1 'slash.for.extraction := 51 | #0 'in.booktitle := 52 | #0 'italic.jounal := 53 | #0 'bold.journal.volume := 54 | #1 'show.missing.address.publisher := 55 | #1 'show.url := 56 | #1 'show.doi := 57 | #0 'show.doi := 58 | #0 'show.note := 59 | } 60 | 61 | ENTRY 62 | { address 63 | author 64 | booktitle 65 | country 66 | date 67 | doi 68 | edition 69 | editor 70 | howpublished 71 | institution 72 | journal 73 | key 74 | language 75 | mark 76 | medium 77 | note 78 | number 79 | organization 80 | pages 81 | patentid 82 | publisher 83 | school 84 | series 85 | title 86 | translator 87 | url 88 | urldate 89 | volume 90 | year 91 | } 92 | { entry.lang entry.is.electronic entry.numbered } 93 | { label extra.label sort.label short.list entry.mark entry.url } 94 | 95 | INTEGERS { output.state before.all mid.sentence after.sentence after.block after.slash } 96 | 97 | INTEGERS { lang.zh lang.ja lang.en lang.ru lang.other } 98 | 99 | INTEGERS { charptr len } 100 | 101 | FUNCTION {init.state.consts} 102 | { #0 'before.all := 103 | #1 'mid.sentence := 104 | #2 'after.sentence := 105 | #3 'after.block := 106 | #4 'after.slash := 107 | #3 'lang.zh := 108 | #4 'lang.ja := 109 | #1 'lang.en := 110 | #2 'lang.ru := 111 | #0 'lang.other := 112 | } 113 | 114 | FUNCTION {bbl.anonymous} 115 | { entry.lang lang.zh = 116 | { "佚名" } 117 | { "Anon" } 118 | if$ 119 | } 120 | 121 | FUNCTION {bbl.space} 122 | { entry.lang lang.zh = 123 | { "\ " } 124 | { " " } 125 | if$ 126 | } 127 | 128 | FUNCTION {bbl.et.al} 129 | { entry.lang lang.zh = 130 | { "等" } 131 | { entry.lang lang.ja = 132 | { "他" } 133 | { entry.lang lang.ru = 134 | { "идр" } 135 | { "et~al." } 136 | if$ 137 | } 138 | if$ 139 | } 140 | if$ 141 | } 142 | 143 | FUNCTION {citation.et.al} 144 | { bbl.et.al } 145 | 146 | FUNCTION {bbl.colon} { ": " } 147 | 148 | FUNCTION {bbl.wide.space} { "\quad " } 149 | 150 | FUNCTION {bbl.slash} { "//\allowbreak " } 151 | 152 | FUNCTION {bbl.sine.loco} 153 | { entry.lang lang.zh = 154 | { "[出版地不详]" } 155 | { "[S.l.]" } 156 | if$ 157 | } 158 | 159 | FUNCTION {bbl.sine.nomine} 160 | { entry.lang lang.zh = 161 | { "[出版者不详]" } 162 | { "[s.n.]" } 163 | if$ 164 | } 165 | 166 | FUNCTION {bbl.sine.loco.sine.nomine} 167 | { entry.lang lang.zh = 168 | { "[出版地不详: 出版者不详]" } 169 | { "[S.l.: s.n.]" } 170 | if$ 171 | } 172 | 173 | FUNCTION {not} 174 | { { #0 } 175 | { #1 } 176 | if$ 177 | } 178 | 179 | FUNCTION {and} 180 | { 'skip$ 181 | { pop$ #0 } 182 | if$ 183 | } 184 | 185 | FUNCTION {or} 186 | { { pop$ #1 } 187 | 'skip$ 188 | if$ 189 | } 190 | 191 | STRINGS { s t } 192 | 193 | FUNCTION {output.nonnull} 194 | { 's := 195 | output.state mid.sentence = 196 | { ", " * write$ } 197 | { output.state after.block = 198 | { add.period$ write$ 199 | newline$ 200 | "\newblock " write$ 201 | } 202 | { output.state before.all = 203 | 'write$ 204 | { output.state after.slash = 205 | { bbl.slash * write$ 206 | newline$ 207 | } 208 | { add.period$ " " * write$ } 209 | if$ 210 | } 211 | if$ 212 | } 213 | if$ 214 | mid.sentence 'output.state := 215 | } 216 | if$ 217 | s 218 | } 219 | 220 | FUNCTION {output} 221 | { duplicate$ empty$ 222 | 'pop$ 223 | 'output.nonnull 224 | if$ 225 | } 226 | 227 | FUNCTION {output.after} 228 | { 't := 229 | duplicate$ empty$ 230 | 'pop$ 231 | { 's := 232 | output.state mid.sentence = 233 | { t * write$ } 234 | { output.state after.block = 235 | { add.period$ write$ 236 | newline$ 237 | "\newblock " write$ 238 | } 239 | { output.state before.all = 240 | 'write$ 241 | { output.state after.slash = 242 | { bbl.slash * write$ } 243 | { add.period$ " " * write$ } 244 | if$ 245 | } 246 | if$ 247 | } 248 | if$ 249 | mid.sentence 'output.state := 250 | } 251 | if$ 252 | s 253 | } 254 | if$ 255 | } 256 | 257 | FUNCTION {output.check} 258 | { 't := 259 | duplicate$ empty$ 260 | { pop$ "empty " t * " in " * cite$ * warning$ } 261 | 'output.nonnull 262 | if$ 263 | } 264 | 265 | FUNCTION {fin.entry} 266 | { write$ 267 | newline$ 268 | } 269 | 270 | FUNCTION {new.block} 271 | { output.state before.all = 272 | 'skip$ 273 | { output.state after.slash = 274 | 'skip$ 275 | { after.block 'output.state := } 276 | if$ 277 | } 278 | if$ 279 | } 280 | 281 | FUNCTION {new.sentence} 282 | { output.state after.block = 283 | 'skip$ 284 | { output.state before.all = 285 | 'skip$ 286 | { output.state after.slash = 287 | 'skip$ 288 | { after.sentence 'output.state := } 289 | if$ 290 | } 291 | if$ 292 | } 293 | if$ 294 | } 295 | 296 | FUNCTION {new.slash} 297 | { output.state before.all = 298 | 'skip$ 299 | { slash.for.extraction 300 | { after.slash 'output.state := } 301 | { after.block 'output.state := } 302 | if$ 303 | } 304 | if$ 305 | } 306 | 307 | FUNCTION {new.block.checka} 308 | { empty$ 309 | 'skip$ 310 | 'new.block 311 | if$ 312 | } 313 | 314 | FUNCTION {new.block.checkb} 315 | { empty$ 316 | swap$ empty$ 317 | and 318 | 'skip$ 319 | 'new.block 320 | if$ 321 | } 322 | 323 | FUNCTION {new.sentence.checka} 324 | { empty$ 325 | 'skip$ 326 | 'new.sentence 327 | if$ 328 | } 329 | 330 | FUNCTION {new.sentence.checkb} 331 | { empty$ 332 | swap$ empty$ 333 | and 334 | 'skip$ 335 | 'new.sentence 336 | if$ 337 | } 338 | 339 | FUNCTION {field.or.null} 340 | { duplicate$ empty$ 341 | { pop$ "" } 342 | 'skip$ 343 | if$ 344 | } 345 | 346 | FUNCTION {italicize} 347 | { duplicate$ empty$ 348 | { pop$ "" } 349 | { "\textit{" swap$ * "}" * } 350 | if$ 351 | } 352 | 353 | INTEGERS { byte second.byte } 354 | 355 | INTEGERS { char.lang tmp.lang } 356 | 357 | STRINGS { tmp.str } 358 | 359 | FUNCTION {get.str.lang} 360 | { 'tmp.str := 361 | lang.other 'tmp.lang := 362 | #1 'charptr := 363 | tmp.str text.length$ #1 + 'len := 364 | { charptr len < } 365 | { tmp.str charptr #1 substring$ chr.to.int$ 'byte := 366 | byte #128 < 367 | { charptr #1 + 'charptr := 368 | byte #64 > byte #91 < and byte #96 > byte #123 < and or 369 | { lang.en 'char.lang := } 370 | { lang.other 'char.lang := } 371 | if$ 372 | } 373 | { tmp.str charptr #1 + #1 substring$ chr.to.int$ 'second.byte := 374 | byte #224 < 375 | { charptr #2 + 'charptr := 376 | byte #207 > byte #212 < and 377 | byte #212 = second.byte #176 < and or 378 | { lang.ru 'char.lang := } 379 | { lang.other 'char.lang := } 380 | if$ 381 | } 382 | { byte #240 < 383 | { charptr #3 + 'charptr := 384 | byte #227 > byte #234 < and 385 | { lang.zh 'char.lang := } 386 | { byte #227 = 387 | { second.byte #143 > 388 | { lang.zh 'char.lang := } 389 | { second.byte #128 > second.byte #132 < and 390 | { lang.ja 'char.lang := } 391 | { lang.other 'char.lang := } 392 | if$ 393 | } 394 | if$ 395 | } 396 | { byte #239 = 397 | second.byte #163 > second.byte #172 < and and 398 | { lang.zh 'char.lang := } 399 | { lang.other 'char.lang := } 400 | if$ 401 | } 402 | if$ 403 | } 404 | if$ 405 | } 406 | { charptr #4 + 'charptr := 407 | byte #240 = second.byte #159 > and 408 | { lang.zh 'char.lang := } 409 | { lang.other 'char.lang := } 410 | if$ 411 | } 412 | if$ 413 | } 414 | if$ 415 | } 416 | if$ 417 | char.lang tmp.lang > 418 | { char.lang 'tmp.lang := } 419 | 'skip$ 420 | if$ 421 | } 422 | while$ 423 | tmp.lang 424 | } 425 | 426 | FUNCTION {check.entry.lang} 427 | { author field.or.null 428 | title field.or.null * 429 | get.str.lang 430 | } 431 | 432 | FUNCTION {set.entry.lang} 433 | { language empty$ 434 | { check.entry.lang } 435 | { language "english" = language "american" = or language "british" = or 436 | { lang.en } 437 | { language "chinese" = 438 | { lang.zh } 439 | { language "japanese" = 440 | { lang.ja } 441 | { language "russian" = 442 | { lang.ru } 443 | { check.entry.lang } 444 | if$ 445 | } 446 | if$ 447 | } 448 | if$ 449 | } 450 | if$ 451 | } 452 | if$ 453 | 'entry.lang := 454 | } 455 | 456 | FUNCTION {set.entry.numbered} 457 | { type$ "patent" = 458 | type$ "standard" = or 459 | type$ "techreport" = or 460 | { #1 'entry.numbered := } 461 | { #0 'entry.numbered := } 462 | if$ 463 | } 464 | 465 | INTEGERS { nameptr namesleft numnames name.lang } 466 | 467 | FUNCTION {format.names} 468 | { 's := 469 | #1 'nameptr := 470 | s num.names$ 'numnames := 471 | numnames 'namesleft := 472 | { namesleft #0 > } 473 | { s nameptr "{vv~}{ll}{, jj}{, ff}" format.name$ 't := 474 | nameptr max.num.authors > 475 | { bbl.et.al 476 | #1 'namesleft := 477 | } 478 | { t "others" = 479 | { bbl.et.al } 480 | { t get.str.lang 'name.lang := 481 | name.lang lang.en = 482 | { t #1 "{vv~}{ll}{~f{~}}" format.name$ 483 | uppercase.name 484 | { "u" change.case$ } 485 | 'skip$ 486 | if$ 487 | t #1 "{, jj}" format.name$ * 488 | } 489 | { t #1 "{ll}{ff}" format.name$ } 490 | if$ 491 | } 492 | if$ 493 | } 494 | if$ 495 | nameptr #1 > 496 | { ", " swap$ * * } 497 | 'skip$ 498 | if$ 499 | nameptr #1 + 'nameptr := 500 | namesleft #1 - 'namesleft := 501 | } 502 | while$ 503 | } 504 | 505 | FUNCTION {format.key} 506 | { empty$ 507 | { key field.or.null } 508 | { "" } 509 | if$ 510 | } 511 | 512 | FUNCTION {format.authors} 513 | { author empty$ not 514 | { author format.names } 515 | { "empty author in " cite$ * warning$ 516 | "" 517 | } 518 | if$ 519 | } 520 | 521 | FUNCTION {format.editors} 522 | { editor empty$ 523 | { "" } 524 | { editor format.names } 525 | if$ 526 | } 527 | 528 | FUNCTION {format.translators} 529 | { translator empty$ 530 | { "" } 531 | { translator format.names 532 | entry.lang lang.zh = 533 | { translator num.names$ #3 > 534 | { ", 译" * } 535 | { "译" * } 536 | if$ 537 | } 538 | 'skip$ 539 | if$ 540 | } 541 | if$ 542 | } 543 | 544 | FUNCTION {format.full.names} 545 | {'s := 546 | #1 'nameptr := 547 | s num.names$ 'numnames := 548 | numnames 'namesleft := 549 | { namesleft #0 > } 550 | { s nameptr "{vv~}{ll}{, jj}{, ff}" format.name$ 't := 551 | t get.str.lang 'name.lang := 552 | name.lang lang.en = 553 | { t #1 "{vv~}{ll}" format.name$ 't := } 554 | { t #1 "{ll}{ff}" format.name$ 't := } 555 | if$ 556 | nameptr #1 > 557 | { 558 | namesleft #1 > 559 | { ", " * t * } 560 | { 561 | numnames #2 > 562 | { "," * } 563 | 'skip$ 564 | if$ 565 | t "others" = 566 | { " et~al." * } 567 | { " and " * t * } 568 | if$ 569 | } 570 | if$ 571 | } 572 | 't 573 | if$ 574 | nameptr #1 + 'nameptr := 575 | namesleft #1 - 'namesleft := 576 | } 577 | while$ 578 | } 579 | 580 | FUNCTION {author.editor.full} 581 | { author empty$ 582 | { editor empty$ 583 | { "" } 584 | { editor format.full.names } 585 | if$ 586 | } 587 | { author format.full.names } 588 | if$ 589 | } 590 | 591 | FUNCTION {author.full} 592 | { author empty$ 593 | { "" } 594 | { author format.full.names } 595 | if$ 596 | } 597 | 598 | FUNCTION {editor.full} 599 | { editor empty$ 600 | { "" } 601 | { editor format.full.names } 602 | if$ 603 | } 604 | 605 | FUNCTION {make.full.names} 606 | { type$ "book" = 607 | type$ "inbook" = 608 | or 609 | 'author.editor.full 610 | { type$ "collection" = 611 | type$ "proceedings" = 612 | or 613 | 'editor.full 614 | 'author.full 615 | if$ 616 | } 617 | if$ 618 | } 619 | 620 | FUNCTION {output.bibitem} 621 | { newline$ 622 | "\bibitem[" write$ 623 | label write$ 624 | ")" make.full.names duplicate$ short.list = 625 | { pop$ } 626 | { * } 627 | if$ 628 | 's := 629 | s text.length$ 'charptr := 630 | { charptr #0 > } 631 | { s charptr #1 substring$ "]" = 632 | { #0 'charptr := } 633 | { charptr #1 - 'charptr := } 634 | if$ 635 | } 636 | while$ 637 | charptr #0 > 638 | { "{" s * "}" * } 639 | { s } 640 | if$ 641 | "]{" * write$ 642 | cite$ write$ 643 | "}" write$ 644 | newline$ 645 | "" 646 | before.all 'output.state := 647 | } 648 | 649 | FUNCTION {change.sentence.case} 650 | { entry.lang lang.en = 651 | { "t" change.case$ } 652 | 'skip$ 653 | if$ 654 | } 655 | 656 | FUNCTION {add.link} 657 | { url empty$ not 658 | { "\href{" url * "}{" * swap$ * "}" * } 659 | { doi empty$ not 660 | { "\href{http://dx.doi.org/" doi * "}{" * swap$ * "}" * } 661 | 'skip$ 662 | if$ 663 | } 664 | if$ 665 | } 666 | 667 | FUNCTION {format.title} 668 | { title empty$ 669 | { "" } 670 | { title 671 | sentence.case.title 672 | 'change.sentence.case 673 | 'skip$ 674 | if$ 675 | entry.numbered number empty$ not and 676 | { bbl.colon * number * } 677 | 'skip$ 678 | if$ 679 | link.title 680 | 'add.link 681 | 'skip$ 682 | if$ 683 | } 684 | if$ 685 | } 686 | 687 | FUNCTION {tie.or.space.connect} 688 | { duplicate$ text.length$ #3 < 689 | { "~" } 690 | { " " } 691 | if$ 692 | swap$ * * 693 | } 694 | 695 | FUNCTION {either.or.check} 696 | { empty$ 697 | 'pop$ 698 | { "can't use both " swap$ * " fields in " * cite$ * warning$ } 699 | if$ 700 | } 701 | 702 | FUNCTION {is.digit} 703 | { duplicate$ empty$ 704 | { pop$ #0 } 705 | { chr.to.int$ 706 | duplicate$ "0" chr.to.int$ < 707 | { pop$ #0 } 708 | { "9" chr.to.int$ > 709 | { #0 } 710 | { #1 } 711 | if$ 712 | } 713 | if$ 714 | } 715 | if$ 716 | } 717 | 718 | FUNCTION {is.number} 719 | { 's := 720 | s empty$ 721 | { #0 } 722 | { s text.length$ 'charptr := 723 | { charptr #0 > 724 | s charptr #1 substring$ is.digit 725 | and 726 | } 727 | { charptr #1 - 'charptr := } 728 | while$ 729 | charptr not 730 | } 731 | if$ 732 | } 733 | 734 | FUNCTION {format.volume} 735 | { volume empty$ not 736 | { volume is.number 737 | { entry.lang lang.zh = 738 | { "第 " volume * " 卷" * } 739 | { "volume" volume tie.or.space.connect } 740 | if$ 741 | } 742 | { volume } 743 | if$ 744 | } 745 | { "" } 746 | if$ 747 | } 748 | 749 | FUNCTION {format.number} 750 | { number empty$ not 751 | { number is.number 752 | { entry.lang lang.zh = 753 | { "第 " number * " 册" * } 754 | { "number" number tie.or.space.connect } 755 | if$ 756 | } 757 | { number } 758 | if$ 759 | } 760 | { "" } 761 | if$ 762 | } 763 | 764 | FUNCTION {format.volume.number} 765 | { volume empty$ not 766 | { format.volume } 767 | { format.number } 768 | if$ 769 | } 770 | 771 | FUNCTION {format.title.vol.num} 772 | { title 773 | sentence.case.title 774 | 'change.sentence.case 775 | 'skip$ 776 | if$ 777 | entry.numbered 778 | { number empty$ not 779 | { bbl.colon * number * } 780 | 'skip$ 781 | if$ 782 | } 783 | { format.volume.number 's := 784 | s empty$ not 785 | { bbl.colon * s * } 786 | 'skip$ 787 | if$ 788 | } 789 | if$ 790 | } 791 | 792 | FUNCTION {format.series.vol.num.title} 793 | { format.volume.number 's := 794 | series empty$ not 795 | { series 796 | sentence.case.title 797 | 'change.sentence.case 798 | 'skip$ 799 | if$ 800 | entry.numbered 801 | { bbl.wide.space * } 802 | { bbl.colon * 803 | s empty$ not 804 | { s * bbl.wide.space * } 805 | 'skip$ 806 | if$ 807 | } 808 | if$ 809 | title * 810 | sentence.case.title 811 | 'change.sentence.case 812 | 'skip$ 813 | if$ 814 | entry.numbered number empty$ not and 815 | { bbl.colon * number * } 816 | 'skip$ 817 | if$ 818 | } 819 | { format.title.vol.num } 820 | if$ 821 | link.title 822 | 'add.link 823 | 'skip$ 824 | if$ 825 | } 826 | 827 | FUNCTION {format.booktitle.vol.num} 828 | { booktitle 829 | entry.numbered 830 | 'skip$ 831 | { format.volume.number 's := 832 | s empty$ not 833 | { bbl.colon * s * } 834 | 'skip$ 835 | if$ 836 | } 837 | if$ 838 | } 839 | 840 | FUNCTION {format.series.vol.num.booktitle} 841 | { format.volume.number 's := 842 | series empty$ not 843 | { series bbl.colon * 844 | entry.numbered not s empty$ not and 845 | { s * bbl.wide.space * } 846 | 'skip$ 847 | if$ 848 | booktitle * 849 | } 850 | { format.booktitle.vol.num } 851 | if$ 852 | in.booktitle 853 | { duplicate$ empty$ not entry.lang lang.en = and 854 | { "In: " swap$ * } 855 | 'skip$ 856 | if$ 857 | } 858 | 'skip$ 859 | if$ 860 | } 861 | 862 | FUNCTION {format.journal} 863 | { journal 864 | italic.jounal entry.lang lang.en = and 865 | 'italicize 866 | 'skip$ 867 | if$ 868 | } 869 | 870 | FUNCTION {set.entry.mark} 871 | { entry.mark empty$ not 872 | 'pop$ 873 | { mark empty$ not 874 | { pop$ mark 'entry.mark := } 875 | { 'entry.mark := } 876 | if$ 877 | } 878 | if$ 879 | } 880 | 881 | FUNCTION {format.mark} 882 | { show.mark 883 | { medium empty$ not 884 | { entry.mark "/" * medium * 'entry.mark := } 885 | { entry.is.electronic 886 | { entry.mark "/OL" * 'entry.mark := } 887 | 'skip$ 888 | if$ 889 | } 890 | if$ 891 | "\allowbreak[" entry.mark * "]" * 892 | } 893 | { "" } 894 | if$ 895 | } 896 | 897 | FUNCTION {num.to.ordinal} 898 | { duplicate$ text.length$ 'charptr := 899 | duplicate$ charptr #1 substring$ 's := 900 | s "1" = 901 | { "st" * } 902 | { s "2" = 903 | { "nd" * } 904 | { s "3" = 905 | { "rd" * } 906 | { "th" * } 907 | if$ 908 | } 909 | if$ 910 | } 911 | if$ 912 | } 913 | 914 | FUNCTION {format.edition} 915 | { edition empty$ 916 | { "" } 917 | { edition is.number 918 | { entry.lang lang.zh = 919 | { edition " 版" * } 920 | { edition num.to.ordinal " ed" * } 921 | if$ 922 | } 923 | { entry.lang lang.en = 924 | { edition change.sentence.case 's := 925 | s "Revised" = s "Revised edition" = or 926 | { "Rev. ed" } 927 | { s " ed" *} 928 | if$ 929 | } 930 | { edition } 931 | if$ 932 | } 933 | if$ 934 | } 935 | if$ 936 | } 937 | 938 | FUNCTION {format.publisher} 939 | { publisher empty$ not 940 | { publisher } 941 | { school empty$ not 942 | { school } 943 | { organization empty$ not 944 | { organization } 945 | { institution empty$ not 946 | { institution } 947 | { "" } 948 | if$ 949 | } 950 | if$ 951 | } 952 | if$ 953 | } 954 | if$ 955 | } 956 | 957 | FUNCTION {format.address.publisher} 958 | { address empty$ not 959 | { address 960 | format.publisher empty$ not 961 | { bbl.colon * format.publisher * } 962 | { entry.is.electronic not show.missing.address.publisher and 963 | { bbl.colon * bbl.sine.nomine * } 964 | 'skip$ 965 | if$ 966 | } 967 | if$ 968 | } 969 | { entry.is.electronic not show.missing.address.publisher and 970 | { format.publisher empty$ not 971 | { bbl.sine.loco bbl.colon * format.publisher * } 972 | { bbl.sine.loco.sine.nomine } 973 | if$ 974 | } 975 | { format.publisher empty$ not 976 | { format.publisher } 977 | { "" } 978 | if$ 979 | } 980 | if$ 981 | } 982 | if$ 983 | } 984 | 985 | FUNCTION {extract.before.dash} 986 | { duplicate$ empty$ 987 | { pop$ "" } 988 | { 's := 989 | #1 'charptr := 990 | s text.length$ #1 + 'len := 991 | { charptr len < 992 | s charptr #1 substring$ "-" = not 993 | and 994 | } 995 | { charptr #1 + 'charptr := } 996 | while$ 997 | s #1 charptr #1 - substring$ 998 | } 999 | if$ 1000 | } 1001 | 1002 | FUNCTION {extract.after.dash} 1003 | { duplicate$ empty$ 1004 | { pop$ "" } 1005 | { 's := 1006 | #1 'charptr := 1007 | s text.length$ #1 + 'len := 1008 | { charptr len < 1009 | s charptr #1 substring$ "-" = not 1010 | and 1011 | } 1012 | { charptr #1 + 'charptr := } 1013 | while$ 1014 | { charptr len < 1015 | s charptr #1 substring$ "-" = 1016 | and 1017 | } 1018 | { charptr #1 + 'charptr := } 1019 | while$ 1020 | s charptr global.max$ substring$ 1021 | } 1022 | if$ 1023 | } 1024 | 1025 | FUNCTION {contains.dash} 1026 | { duplicate$ empty$ 1027 | { pop$ #0 } 1028 | { 's := 1029 | { s empty$ not 1030 | s #1 #1 substring$ "-" = not 1031 | and 1032 | } 1033 | { s #2 global.max$ substring$ 's := } 1034 | while$ 1035 | s empty$ not 1036 | } 1037 | if$ 1038 | } 1039 | 1040 | FUNCTION {format.year} 1041 | { year empty$ not 1042 | { year extract.before.dash } 1043 | { date empty$ not 1044 | { date extract.before.dash } 1045 | { "empty year in " cite$ * warning$ 1046 | urldate empty$ not 1047 | { "[" urldate extract.before.dash * "]" * } 1048 | { "" } 1049 | if$ 1050 | } 1051 | if$ 1052 | } 1053 | if$ 1054 | extra.label * 1055 | } 1056 | 1057 | FUNCTION {format.date} 1058 | { type$ "patent" = type$ "newspaper" = or 1059 | date empty$ not and 1060 | { date } 1061 | { year } 1062 | if$ 1063 | } 1064 | 1065 | FUNCTION {format.editdate} 1066 | { date empty$ not 1067 | { "\allowbreak(" date * ")" * } 1068 | { "" } 1069 | if$ 1070 | } 1071 | 1072 | FUNCTION {format.urldate} 1073 | { urldate empty$ not entry.is.electronic and 1074 | { "\allowbreak[" urldate * "]" * } 1075 | { "" } 1076 | if$ 1077 | } 1078 | 1079 | FUNCTION {hyphenate} 1080 | { 't := 1081 | "" 1082 | { t empty$ not } 1083 | { t #1 #1 substring$ "-" = 1084 | { "-" * 1085 | { t #1 #1 substring$ "-" = } 1086 | { t #2 global.max$ substring$ 't := } 1087 | while$ 1088 | } 1089 | { t #1 #1 substring$ * 1090 | t #2 global.max$ substring$ 't := 1091 | } 1092 | if$ 1093 | } 1094 | while$ 1095 | } 1096 | 1097 | FUNCTION {format.pages} 1098 | { pages empty$ 1099 | { "" } 1100 | { pages hyphenate } 1101 | if$ 1102 | } 1103 | 1104 | FUNCTION {format.journal.volume} 1105 | { volume empty$ not 1106 | { bold.journal.volume 1107 | { "\textbf{" volume * "}" * } 1108 | { volume } 1109 | if$ 1110 | } 1111 | { "" } 1112 | if$ 1113 | } 1114 | 1115 | FUNCTION {format.journal.number} 1116 | { number empty$ not 1117 | { "\penalty0 (" number * ")" * } 1118 | { "" } 1119 | if$ 1120 | } 1121 | 1122 | FUNCTION {format.journal.pages} 1123 | { pages empty$ 1124 | { "" } 1125 | { ":\penalty0 " pages hyphenate * } 1126 | if$ 1127 | } 1128 | 1129 | FUNCTION {format.periodical.year.volume.number} 1130 | { year empty$ not 1131 | { year extract.before.dash } 1132 | { "empty year in periodical " cite$ * warning$ } 1133 | if$ 1134 | volume empty$ not 1135 | { ", " * volume extract.before.dash * } 1136 | 'skip$ 1137 | if$ 1138 | number empty$ not 1139 | { "\penalty0 (" * number extract.before.dash * ")" * } 1140 | 'skip$ 1141 | if$ 1142 | year contains.dash 1143 | { "--" * 1144 | year extract.after.dash empty$ 1145 | volume extract.after.dash empty$ and 1146 | number extract.after.dash empty$ and not 1147 | { year extract.after.dash empty$ not 1148 | { year extract.after.dash * } 1149 | { year extract.before.dash * } 1150 | if$ 1151 | volume empty$ not 1152 | { ", " * volume extract.after.dash * } 1153 | 'skip$ 1154 | if$ 1155 | number empty$ not 1156 | { "\penalty0 (" * number extract.after.dash * ")" * } 1157 | 'skip$ 1158 | if$ 1159 | } 1160 | 'skip$ 1161 | if$ 1162 | } 1163 | 'skip$ 1164 | if$ 1165 | } 1166 | 1167 | FUNCTION {check.url} 1168 | { url empty$ not 1169 | { "\url{" url * "}" * 'entry.url := 1170 | #1 'entry.is.electronic := 1171 | } 1172 | { howpublished empty$ not 1173 | { howpublished #1 #5 substring$ "\url{" = 1174 | { howpublished 'entry.url := 1175 | #1 'entry.is.electronic := 1176 | } 1177 | 'skip$ 1178 | if$ 1179 | } 1180 | { note empty$ not 1181 | { note #1 #5 substring$ "\url{" = 1182 | { note 'entry.url := 1183 | #1 'entry.is.electronic := 1184 | } 1185 | 'skip$ 1186 | if$ 1187 | } 1188 | 'skip$ 1189 | if$ 1190 | } 1191 | if$ 1192 | } 1193 | if$ 1194 | } 1195 | 1196 | FUNCTION {format.url} 1197 | { entry.url empty$ not 1198 | { new.block entry.url } 1199 | { "" } 1200 | if$ 1201 | } 1202 | 1203 | FUNCTION {format.country} 1204 | { country empty$ not 1205 | { country } 1206 | { "" } 1207 | if$ 1208 | } 1209 | 1210 | FUNCTION {format.patentid} 1211 | { patentid empty$ not 1212 | { patentid } 1213 | { "" } 1214 | if$ 1215 | } 1216 | 1217 | FUNCTION {check.doi} 1218 | { doi empty$ not 1219 | { #1 'entry.is.electronic := } 1220 | 'skip$ 1221 | if$ 1222 | } 1223 | 1224 | FUNCTION {is.in.url} 1225 | { 's := 1226 | s empty$ 1227 | { #1 } 1228 | { entry.url empty$ 1229 | { #0 } 1230 | { s text.length$ 'len := 1231 | entry.url text.length$ 'charptr := 1232 | { entry.url charptr len substring$ s = not 1233 | charptr #0 > 1234 | and 1235 | } 1236 | { charptr #1 - 'charptr := } 1237 | while$ 1238 | charptr 1239 | } 1240 | if$ 1241 | } 1242 | if$ 1243 | } 1244 | 1245 | FUNCTION {format.doi} 1246 | { "" 1247 | doi empty$ not show.doi and 1248 | { "" 's := 1249 | doi 't := 1250 | #0 'numnames := 1251 | { t empty$ not} 1252 | { t #1 #1 substring$ 'tmp.str := 1253 | tmp.str "," = tmp.str " " = or t #2 #1 substring$ empty$ or 1254 | { t #2 #1 substring$ empty$ 1255 | { s tmp.str * 's := } 1256 | 'skip$ 1257 | if$ 1258 | s empty$ s is.in.url or 1259 | 'skip$ 1260 | { numnames #1 + 'numnames := 1261 | numnames #1 > 1262 | { ", " * } 1263 | { "DOI: " * } 1264 | if$ 1265 | "\doi{" s * "}" * * 1266 | } 1267 | if$ 1268 | "" 's := 1269 | } 1270 | { s tmp.str * 's := } 1271 | if$ 1272 | t #2 global.max$ substring$ 't := 1273 | } 1274 | while$ 1275 | 's := 1276 | s empty$ not 1277 | { new.block s } 1278 | { "" } 1279 | if$ 1280 | } 1281 | 'skip$ 1282 | if$ 1283 | } 1284 | 1285 | FUNCTION {check.electronic} 1286 | { "" 'entry.url := 1287 | #0 'entry.is.electronic := 1288 | 'check.doi 1289 | 'skip$ 1290 | if$ 1291 | 'check.url 1292 | 'skip$ 1293 | if$ 1294 | medium empty$ not 1295 | { medium "MT" = medium "DK" = or medium "CD" = or medium "OL" = or 1296 | { #1 'entry.is.electronic := } 1297 | 'skip$ 1298 | if$ 1299 | } 1300 | 'skip$ 1301 | if$ 1302 | } 1303 | 1304 | FUNCTION {format.note} 1305 | { note empty$ not show.note and 1306 | { note } 1307 | { "" } 1308 | if$ 1309 | } 1310 | 1311 | FUNCTION {empty.misc.check} 1312 | { author empty$ title empty$ 1313 | year empty$ 1314 | and and 1315 | key empty$ not and 1316 | { "all relevant fields are empty in " cite$ * warning$ } 1317 | 'skip$ 1318 | if$ 1319 | } 1320 | 1321 | FUNCTION {monograph} 1322 | { output.bibitem 1323 | author empty$ not 1324 | { format.authors } 1325 | { editor empty$ not 1326 | { format.editors } 1327 | { "empty author and editor in " cite$ * warning$ 1328 | "" 1329 | } 1330 | if$ 1331 | } 1332 | if$ 1333 | output 1334 | new.block 1335 | format.series.vol.num.title "title" output.check 1336 | edition empty$ 1337 | 'skip$ 1338 | { new.block 1339 | format.edition output } 1340 | if$ 1341 | "M" set.entry.mark 1342 | format.mark "" output.after 1343 | new.block 1344 | format.translators output 1345 | new.sentence 1346 | format.address.publisher output 1347 | format.year "year" output.check 1348 | format.pages bbl.colon output.after 1349 | format.urldate "" output.after 1350 | format.url output 1351 | format.doi output 1352 | new.block 1353 | format.note output 1354 | fin.entry 1355 | } 1356 | 1357 | FUNCTION {incollection} 1358 | { output.bibitem 1359 | format.authors output 1360 | author format.key output 1361 | new.block 1362 | format.title "title" output.check 1363 | edition empty$ 1364 | 'skip$ 1365 | { new.block 1366 | format.edition output } 1367 | if$ 1368 | "M" set.entry.mark 1369 | format.mark "" output.after 1370 | new.block 1371 | format.translators output 1372 | new.sentence 1373 | format.editors output 1374 | new.block 1375 | format.series.vol.num.booktitle "booktitle" output.check 1376 | new.block 1377 | format.address.publisher output 1378 | format.year "year" output.check 1379 | format.pages bbl.colon output.after 1380 | format.urldate "" output.after 1381 | format.url output 1382 | format.doi output 1383 | new.block 1384 | format.note output 1385 | fin.entry 1386 | } 1387 | 1388 | FUNCTION {periodical} 1389 | { output.bibitem 1390 | format.authors output 1391 | author format.key output 1392 | new.block 1393 | format.title "title" output.check 1394 | "J" set.entry.mark 1395 | format.mark "" output.after 1396 | new.block 1397 | format.periodical.year.volume.number output 1398 | new.block 1399 | format.address.publisher output 1400 | format.date "year" output.check 1401 | format.urldate "" output.after 1402 | format.url output 1403 | format.doi output 1404 | new.block 1405 | format.note output 1406 | fin.entry 1407 | } 1408 | 1409 | FUNCTION {article} 1410 | { output.bibitem 1411 | format.authors output 1412 | author format.key output 1413 | new.block 1414 | format.title "title" output.check 1415 | "J" set.entry.mark 1416 | format.mark "" output.after 1417 | new.block 1418 | format.journal "journal" output.check 1419 | format.date "year" output.check 1420 | format.journal.volume output 1421 | format.journal.number "" output.after 1422 | format.journal.pages "" output.after 1423 | format.urldate "" output.after 1424 | format.url output 1425 | format.doi output 1426 | new.block 1427 | format.note output 1428 | fin.entry 1429 | } 1430 | 1431 | FUNCTION {patent} 1432 | { output.bibitem 1433 | format.authors output 1434 | author format.key output 1435 | new.block 1436 | format.title "title" output.check 1437 | "P" set.entry.mark 1438 | format.mark "" output.after 1439 | new.block 1440 | format.country output 1441 | format.patentid output 1442 | new.block 1443 | format.date "year" output.check 1444 | format.urldate "" output.after 1445 | format.url output 1446 | format.doi output 1447 | new.block 1448 | format.note output 1449 | fin.entry 1450 | } 1451 | 1452 | FUNCTION {electronic} 1453 | { #1 #1 check.electronic 1454 | #1 'entry.is.electronic := 1455 | output.bibitem 1456 | format.authors output 1457 | author format.key output 1458 | new.block 1459 | format.series.vol.num.title "title" output.check 1460 | "EB" set.entry.mark 1461 | format.mark "" output.after 1462 | new.block 1463 | format.address.publisher output 1464 | date empty$ 1465 | { format.date output } 1466 | 'skip$ 1467 | if$ 1468 | format.pages bbl.colon output.after 1469 | format.editdate "" output.after 1470 | format.urldate "" output.after 1471 | format.url output 1472 | format.doi output 1473 | new.block 1474 | format.note output 1475 | fin.entry 1476 | } 1477 | 1478 | FUNCTION {misc} 1479 | { journal empty$ not 1480 | 'article 1481 | { booktitle empty$ not 1482 | 'incollection 1483 | { publisher empty$ not 1484 | 'monograph 1485 | { entry.is.electronic 1486 | 'electronic 1487 | { "Z" set.entry.mark 1488 | monograph 1489 | } 1490 | if$ 1491 | } 1492 | if$ 1493 | } 1494 | if$ 1495 | } 1496 | if$ 1497 | empty.misc.check 1498 | } 1499 | 1500 | FUNCTION {archive} 1501 | { "A" set.entry.mark 1502 | misc 1503 | } 1504 | 1505 | FUNCTION {book} { monograph } 1506 | 1507 | FUNCTION {booklet} { book } 1508 | 1509 | FUNCTION {collection} 1510 | { "G" set.entry.mark 1511 | monograph 1512 | } 1513 | 1514 | FUNCTION {database} 1515 | { "DB" set.entry.mark 1516 | electronic 1517 | } 1518 | 1519 | FUNCTION {dataset} 1520 | { "DS" set.entry.mark 1521 | electronic 1522 | } 1523 | 1524 | FUNCTION {inbook} { book } 1525 | 1526 | FUNCTION {inproceedings} 1527 | { "C" set.entry.mark 1528 | incollection 1529 | } 1530 | 1531 | FUNCTION {conference} { inproceedings } 1532 | 1533 | FUNCTION {map} 1534 | { "CM" set.entry.mark 1535 | misc 1536 | } 1537 | 1538 | FUNCTION {manual} { monograph } 1539 | 1540 | FUNCTION {mastersthesis} 1541 | { lang.zh entry.lang = 1542 | { "D]. [硕士学位论文" } 1543 | { "D]. [dissertation" } 1544 | if$ 1545 | set.entry.mark 1546 | monograph 1547 | } 1548 | 1549 | FUNCTION {newspaper} 1550 | { "N" set.entry.mark 1551 | article 1552 | } 1553 | 1554 | FUNCTION {online} 1555 | { "EB" set.entry.mark 1556 | electronic 1557 | } 1558 | 1559 | FUNCTION {phdthesis} 1560 | { lang.zh entry.lang = 1561 | { "D]. [博士学位论文" } 1562 | { "D]. [dissertation" } 1563 | if$ 1564 | set.entry.mark 1565 | monograph 1566 | } 1567 | 1568 | FUNCTION {proceedings} 1569 | { "C" set.entry.mark 1570 | monograph 1571 | } 1572 | 1573 | FUNCTION {software} 1574 | { "CP" set.entry.mark 1575 | electronic 1576 | } 1577 | 1578 | FUNCTION {standard} 1579 | { "S" set.entry.mark 1580 | misc 1581 | } 1582 | 1583 | FUNCTION {techreport} 1584 | { "R" set.entry.mark 1585 | misc 1586 | } 1587 | 1588 | FUNCTION {unpublished} 1589 | { "Z" set.entry.mark 1590 | misc 1591 | } 1592 | 1593 | FUNCTION {default.type} { misc } 1594 | 1595 | MACRO {jan} {"January"} 1596 | 1597 | MACRO {feb} {"February"} 1598 | 1599 | MACRO {mar} {"March"} 1600 | 1601 | MACRO {apr} {"April"} 1602 | 1603 | MACRO {may} {"May"} 1604 | 1605 | MACRO {jun} {"June"} 1606 | 1607 | MACRO {jul} {"July"} 1608 | 1609 | MACRO {aug} {"August"} 1610 | 1611 | MACRO {sep} {"September"} 1612 | 1613 | MACRO {oct} {"October"} 1614 | 1615 | MACRO {nov} {"November"} 1616 | 1617 | MACRO {dec} {"December"} 1618 | 1619 | MACRO {acmcs} {"ACM Computing Surveys"} 1620 | 1621 | MACRO {acta} {"Acta Informatica"} 1622 | 1623 | MACRO {cacm} {"Communications of the ACM"} 1624 | 1625 | MACRO {ibmjrd} {"IBM Journal of Research and Development"} 1626 | 1627 | MACRO {ibmsj} {"IBM Systems Journal"} 1628 | 1629 | MACRO {ieeese} {"IEEE Transactions on Software Engineering"} 1630 | 1631 | MACRO {ieeetc} {"IEEE Transactions on Computers"} 1632 | 1633 | MACRO {ieeetcad} 1634 | {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"} 1635 | 1636 | MACRO {ipl} {"Information Processing Letters"} 1637 | 1638 | MACRO {jacm} {"Journal of the ACM"} 1639 | 1640 | MACRO {jcss} {"Journal of Computer and System Sciences"} 1641 | 1642 | MACRO {scp} {"Science of Computer Programming"} 1643 | 1644 | MACRO {sicomp} {"SIAM Journal on Computing"} 1645 | 1646 | MACRO {tocs} {"ACM Transactions on Computer Systems"} 1647 | 1648 | MACRO {tods} {"ACM Transactions on Database Systems"} 1649 | 1650 | MACRO {tog} {"ACM Transactions on Graphics"} 1651 | 1652 | MACRO {toms} {"ACM Transactions on Mathematical Software"} 1653 | 1654 | MACRO {toois} {"ACM Transactions on Office Information Systems"} 1655 | 1656 | MACRO {toplas} {"ACM Transactions on Programming Languages and Systems"} 1657 | 1658 | MACRO {tcs} {"Theoretical Computer Science"} 1659 | 1660 | FUNCTION {sortify} 1661 | { purify$ 1662 | "l" change.case$ 1663 | } 1664 | 1665 | FUNCTION {chop.word} 1666 | { 's := 1667 | 'len := 1668 | s #1 len substring$ = 1669 | { s len #1 + global.max$ substring$ } 1670 | 's 1671 | if$ 1672 | } 1673 | 1674 | FUNCTION {format.lab.names} 1675 | { 's := 1676 | s #1 "{vv~}{ll}{, jj}{, ff}" format.name$ 't := 1677 | t get.str.lang 'name.lang := 1678 | name.lang lang.en = 1679 | { t #1 "{vv~}{ll}" format.name$} 1680 | { t #1 "{ll}{ff}" format.name$} 1681 | if$ 1682 | s num.names$ #1 > 1683 | { bbl.space * citation.et.al * } 1684 | 'skip$ 1685 | if$ 1686 | } 1687 | 1688 | FUNCTION {author.key.label} 1689 | { author empty$ 1690 | { key empty$ 1691 | { cite$ #1 #3 substring$ } 1692 | 'key 1693 | if$ 1694 | } 1695 | { author format.lab.names } 1696 | if$ 1697 | } 1698 | 1699 | FUNCTION {author.editor.key.label} 1700 | { author empty$ 1701 | { editor empty$ 1702 | { key empty$ 1703 | { cite$ #1 #3 substring$ } 1704 | 'key 1705 | if$ 1706 | } 1707 | { editor format.lab.names } 1708 | if$ 1709 | } 1710 | { author format.lab.names } 1711 | if$ 1712 | } 1713 | 1714 | FUNCTION {author.key.organization.label} 1715 | { author empty$ 1716 | { key empty$ 1717 | { organization empty$ 1718 | { cite$ #1 #3 substring$ } 1719 | { "The " #4 organization chop.word #3 text.prefix$ } 1720 | if$ 1721 | } 1722 | 'key 1723 | if$ 1724 | } 1725 | { author format.lab.names } 1726 | if$ 1727 | } 1728 | 1729 | FUNCTION {editor.key.organization.label} 1730 | { editor empty$ 1731 | { key empty$ 1732 | { organization empty$ 1733 | { cite$ #1 #3 substring$ } 1734 | { "The " #4 organization chop.word #3 text.prefix$ } 1735 | if$ 1736 | } 1737 | 'key 1738 | if$ 1739 | } 1740 | { editor format.lab.names } 1741 | if$ 1742 | } 1743 | 1744 | FUNCTION {calc.short.authors} 1745 | { type$ "book" = 1746 | type$ "inbook" = 1747 | or 1748 | 'author.editor.key.label 1749 | { type$ "collection" = 1750 | type$ "proceedings" = 1751 | or 1752 | { editor empty$ not 1753 | 'editor.key.organization.label 1754 | 'author.key.organization.label 1755 | if$ 1756 | } 1757 | 'author.key.label 1758 | if$ 1759 | } 1760 | if$ 1761 | 'short.list := 1762 | } 1763 | 1764 | FUNCTION {calc.label} 1765 | { calc.short.authors 1766 | short.list 1767 | "(" 1768 | * 1769 | format.year duplicate$ empty$ 1770 | short.list key field.or.null = or 1771 | { pop$ "" } 1772 | 'skip$ 1773 | if$ 1774 | * 1775 | 'label := 1776 | } 1777 | 1778 | INTEGERS { seq.num } 1779 | 1780 | FUNCTION {init.seq} 1781 | { #0 'seq.num :=} 1782 | 1783 | FUNCTION {int.to.fix} 1784 | { "000000000" swap$ int.to.str$ * 1785 | #-1 #10 substring$ 1786 | } 1787 | 1788 | FUNCTION {presort} 1789 | { set.entry.lang 1790 | set.entry.numbered 1791 | show.url show.doi check.electronic 1792 | calc.label 1793 | label sortify 1794 | " " 1795 | * 1796 | seq.num #1 + 'seq.num := 1797 | seq.num int.to.fix 1798 | 'sort.label := 1799 | sort.label * 1800 | #1 entry.max$ substring$ 1801 | 'sort.key$ := 1802 | } 1803 | 1804 | STRINGS { longest.label last.label next.extra } 1805 | 1806 | INTEGERS { longest.label.width last.extra.num number.label } 1807 | 1808 | FUNCTION {initialize.longest.label} 1809 | { "" 'longest.label := 1810 | #0 int.to.chr$ 'last.label := 1811 | "" 'next.extra := 1812 | #0 'longest.label.width := 1813 | #0 'last.extra.num := 1814 | #0 'number.label := 1815 | } 1816 | 1817 | FUNCTION {forward.pass} 1818 | { last.label label = 1819 | { last.extra.num #1 + 'last.extra.num := 1820 | last.extra.num int.to.chr$ 'extra.label := 1821 | } 1822 | { "a" chr.to.int$ 'last.extra.num := 1823 | "" 'extra.label := 1824 | label 'last.label := 1825 | } 1826 | if$ 1827 | number.label #1 + 'number.label := 1828 | } 1829 | 1830 | FUNCTION {reverse.pass} 1831 | { next.extra "b" = 1832 | { "a" 'extra.label := } 1833 | 'skip$ 1834 | if$ 1835 | extra.label 'next.extra := 1836 | extra.label 1837 | duplicate$ empty$ 1838 | 'skip$ 1839 | { "{\natexlab{" swap$ * "}}" * } 1840 | if$ 1841 | 'extra.label := 1842 | label extra.label * 'label := 1843 | } 1844 | 1845 | FUNCTION {bib.sort.order} 1846 | { sort.label 'sort.key$ := 1847 | } 1848 | 1849 | FUNCTION {begin.bib} 1850 | { preamble$ empty$ 1851 | 'skip$ 1852 | { preamble$ write$ newline$ } 1853 | if$ 1854 | "\begin{thebibliography}{" number.label int.to.str$ * "}" * 1855 | write$ newline$ 1856 | "\providecommand{\natexlab}[1]{#1}" 1857 | write$ newline$ 1858 | "\providecommand{\url}[1]{#1}" 1859 | write$ newline$ 1860 | "\expandafter\ifx\csname urlstyle\endcsname\relax\relax\else" 1861 | write$ newline$ 1862 | " \urlstyle{same}\fi" 1863 | write$ newline$ 1864 | show.doi 1865 | { "\providecommand{\href}[2]{\url{#2}}" 1866 | write$ newline$ 1867 | "\providecommand{\doi}[1]{\href{https://doi.org/#1}{#1}}" 1868 | write$ newline$ 1869 | } 1870 | 'skip$ 1871 | if$ 1872 | } 1873 | 1874 | FUNCTION {end.bib} 1875 | { newline$ 1876 | "\end{thebibliography}" write$ newline$ 1877 | } 1878 | 1879 | READ 1880 | 1881 | EXECUTE {init.state.consts} 1882 | 1883 | EXECUTE {load.config} 1884 | 1885 | EXECUTE {init.seq} 1886 | 1887 | ITERATE {presort} 1888 | 1889 | SORT 1890 | 1891 | EXECUTE {initialize.longest.label} 1892 | 1893 | ITERATE {forward.pass} 1894 | 1895 | REVERSE {reverse.pass} 1896 | 1897 | ITERATE {bib.sort.order} 1898 | 1899 | SORT 1900 | 1901 | EXECUTE {begin.bib} 1902 | 1903 | ITERATE {call.type$} 1904 | 1905 | EXECUTE {end.bib} 1906 | -------------------------------------------------------------------------------- /zzuthesis.cls: -------------------------------------------------------------------------------- 1 | %%================================================ 2 | %% Filename: zzuthesis.cls 3 | %% Encoding: UTF-8 4 | %% Author: Yuan Xiaoshuai - yxshuai@gmail.com 5 | %% Created: 2012-01-08 13:11 6 | %% Last modified: 2020-04-05 20:27 7 | %%================================================ 8 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 9 | %% 标识节(Identification) 10 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 11 | \NeedsTeXFormat{LaTeX2e} 12 | \ProvidesClass{zzuthesis} 13 | [2020/01/03 5.0.1 Zhengzhou University Thesis Template] 14 | \hyphenation{Zzu-Thesis} 15 | \def\zzuthesis{ZzuThesis} 16 | \def\version{5.0.1} 17 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 18 | %% 声明选项(Declaration options) 19 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 20 | \newif\ifzzu@bachelor\zzu@bachelorfalse 21 | \newif\ifzzu@master\zzu@masterfalse 22 | \newif\ifzzu@doctor\zzu@doctorfalse 23 | \DeclareOption{bachelor}{\zzu@bachelortrue} 24 | \DeclareOption{master}{\zzu@mastertrue} 25 | \DeclareOption{doctor}{\zzu@doctortrue} 26 | \DeclareOption*{\PassOptionsToClass{\CurrentOption}{ctexbook}} 27 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 28 | %% 选项处理 (Option processing) 29 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 30 | \ProcessOptions\relax 31 | \ifzzu@bachelor\relax\else 32 | \ifzzu@master\relax\else 33 | \ifzzu@doctor\relax\else 34 | \ClassError{zzuthesis}%Reporting errors 35 | {You have to specify one of thesis options:% 36 | bachelor, master or doctor.}{} 37 | \fi 38 | \fi 39 | \fi 40 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 41 | %% 装载类与宏包 (Loading classes & packages) 42 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 43 | \ifzzu@doctor%博士论文双面打印 44 | \LoadClass[zihao=-4,a4paper,UTF8,scheme=plain]{ctexbook} 45 | \else%其它单面打印 46 | \LoadClass[zihao=-4,a4paper,UTF8,scheme=plain,openany]{ctexbook} 47 | \fi 48 | \RequirePackage{ifxetex} 49 | \ifxetex\else 50 | \ClassError{zzuthesis}{You should use XeLaTeX}{} 51 | \end{document} 52 | \fi 53 | \RequirePackage{environ} 54 | \RequirePackage{xparse} 55 | \RequirePackage{tikz} 56 | \RequirePackage{etoolbox} 57 | \RequirePackage{calc}%算术运算 58 | \RequirePackage[shortlabels]{enumitem} 59 | \RequirePackage{titletoc}%目录格式 60 | \RequirePackage{amsmath,amsthm} 61 | \RequirePackage{unicode-math} 62 | \unimathsetup{ 63 | math-style = ISO, 64 | bold-style = ISO, 65 | nabla = upright, 66 | partial = upright, 67 | } 68 | \RequirePackage{geometry}%页边距设置 69 | \RequirePackage{tabularx}%表格宽度控制 70 | \RequirePackage{multirow}%跨行表格 71 | \RequirePackage{longtable}%长表格,可替换supertabular 72 | \RequirePackage{booktabs}%三线表格 73 | \RequirePackage[labelformat=simple]{subcaption} 74 | \RequirePackage{graphicx}%图形支持 75 | \RequirePackage[numbers,super,sort&compress]{natbib}%参考文献引用 76 | \RequirePackage{hyperref}%超链接、书签 77 | \hypersetup{% 78 | linktoc=all, 79 | bookmarksnumbered=true,%节的标号放入标签 80 | bookmarksopen=true, 81 | bookmarksopenlevel=1, 82 | breaklinks=true, 83 | plainpages=false, 84 | hidelinks} 85 | \urlstyle{same}%相同字体 86 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 87 | %% 文前,正文,文后格式 88 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 89 | \renewcommand\frontmatter{% 90 | \ifzzu@doctor\cleardoublepage\else\clearpage\fi 91 | \ctexset{chapter/format+=\centering} 92 | \@mainmatterfalse 93 | \pagenumbering{Roman} 94 | \pagestyle{zzu@headings}} 95 | \renewcommand\mainmatter{% 96 | \ifzzu@doctor\cleardoublepage\else\clearpage\fi 97 | \ctexset{chapter/format+={\ifzzu@bachelor\centering%本科居中 98 | \else\raggedright\fi}}%顶左 99 | \@mainmattertrue 100 | \pagenumbering{arabic}} 101 | \renewcommand\backmatter{% 102 | \ifzzu@doctor\cleardoublepage\else\clearpage\fi 103 | \ctexset{chapter/format+=\centering} 104 | \@mainmattertrue} 105 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 106 | %% 中文配置 107 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 108 | \ctexset{% 109 | contentsname={目\hspace{\ccwd} 录}, 110 | listfigurename={插图清单}, 111 | listtablename={表格清单}, 112 | figurename={图}, 113 | tablename={表}, 114 | appendixname={附录}, 115 | bibname={参考文献}, 116 | proofname={证明} 117 | } 118 | \newcommand\equationname{公式} 119 | \newcommand\zzu@definition@name{定义} 120 | \newcommand\zzu@theorem@name{定理} 121 | \newcommand\zzu@lemma@name{引理} 122 | \newcommand\zzu@corollary@name{推论} 123 | \def\zzu@schoolname{郑州大学} 124 | \def\zzu@title@sep{:} 125 | \ifzzu@bachelor 126 | \def\zzu@subtitle{毕业设计(论文)} 127 | \def\zzu@bachelor@title@pre{题\hspace{2\ccwd} 目} 128 | \def\zzu@supervisor@title{指导教师} 129 | \def\zzu@protitle@title{职称} 130 | \def\zzu@author@title{学生姓名} 131 | \def\zzu@stuno@title{学号} 132 | \def\zzu@major@title{专业} 133 | \def\zzu@department@title{院(系)} 134 | \else 135 | \def\zzu@schoolcode@title{学校代码} 136 | \def\zzu@id@title{学号或申请号} 137 | \def\zzu@secretlevel@title{密级} 138 | \ifzzu@master 139 | \def\zzu@subtitle{硕士学位论文} 140 | \else 141 | \def\zzu@subtitle{博士学位论文} 142 | \fi 143 | \def\zzu@author@title{作者姓名} 144 | \def\zzu@supervisor@title{导师姓名} 145 | \def\zzu@subject@title{学科门类} 146 | \def\zzu@major@title{专业名称} 147 | \ifzzu@master 148 | \def\zzu@department@title{培养院系} 149 | \else\fi 150 | \fi 151 | \def\zzu@cdate@title{完成时间} 152 | \let\CJK@todaysave=\today 153 | \def\CJK@todaysmall@short{\the\year 年 \the\month 月} 154 | \def\CJK@todaysmall{\CJK@todaysmall@short \the\day 日} 155 | \def\CJK@todaybig@short{\CJKdigits{\the\year} 年 \CJKnumber{\the\month} 月} 156 | \def\CJK@todaybig{\CJK@todaybig@short \CJKnumber{\the\day} 日} 157 | \def\CJK@today{\CJK@todaysmall} 158 | \renewcommand\today{\CJK@today} 159 | \newcommand\CJKtoday[1][1]{% 160 | \ifcase#1\def\CJK@today{\CJK@todaysave} 161 | \or\def\CJK@today{\CJK@todaysmall} 162 | \or\def\CJK@today{\CJK@todaybig} 163 | \fi} 164 | \newcommand{\cabstractname}{摘\hspace{\ccwd} 要} 165 | \newcommand{\eabstractname}{Abstract} 166 | \def\zzu@ckeywords@separator{;} 167 | \def\zzu@ekeywords@separator{; } 168 | \newcommand{\zzu@ckeywords@title}{关键词:} 169 | \newcommand{\zzu@ekeywords@title}{Key words:\enskip} 170 | \newcommand{\zzu@denotation@name}{主要符号对照表} 171 | \newcommand{\zzu@ackname}{致\hspace{\ccwd} 谢} 172 | \newcommand{\zzu@review@title}{综述} 173 | \ifzzu@bachelor 174 | \newcommand{\zzu@resume@title}{在学期间参加课题的研究成果} 175 | \else 176 | \newcommand{\zzu@resume@title}{个人简历、在学期间发表的学术论文与研究成果} 177 | \fi 178 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 179 | %% 字号设置 180 | %% 模板使用thuthesis论文模板的字号定义 181 | %% 使用时可加入行距参数,如\chuhao[1.25]表示初号字体,1.25倍行距 182 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 183 | \def\zzu@def@fontsize#1#2{% 184 | \expandafter\newcommand\csname #1\endcsname[1][1.3]{% 185 | \fontsize{#2}{##1\dimexpr #2}\selectfont}} 186 | \zzu@def@fontsize{chuhao}{42bp} 187 | \zzu@def@fontsize{xiaochu}{36bp} 188 | \zzu@def@fontsize{yihao}{26bp} 189 | \zzu@def@fontsize{xiaoyi}{24bp} 190 | \zzu@def@fontsize{erhao}{22bp} 191 | \zzu@def@fontsize{xiaoer}{18bp} 192 | \zzu@def@fontsize{sanhao}{16bp} 193 | \zzu@def@fontsize{xiaosan}{15bp} 194 | \zzu@def@fontsize{sihao}{14bp} 195 | \zzu@def@fontsize{banxiaosi}{13bp} 196 | \zzu@def@fontsize{xiaosi}{12bp} 197 | \zzu@def@fontsize{dawu}{11bp} 198 | \zzu@def@fontsize{wuhao}{10.5bp} 199 | \zzu@def@fontsize{xiaowu}{9bp} 200 | \zzu@def@fontsize{liuhao}{7.5bp} 201 | \zzu@def@fontsize{xiaoliu}{6.5bp} 202 | \zzu@def@fontsize{qihao}{5.5bp} 203 | \zzu@def@fontsize{bahao}{5bp} 204 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 205 | %% 正文字体及行距 206 | %% 研究生:小四号 (12bp) 字,固定行距 20bp 207 | %% 本科生:小四号 (12bp) 字,1.25倍行距 208 | %% Word 小四号字 1.25 倍行距与固定行距 20bp 较接近 209 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 210 | \renewcommand\normalsize{% 211 | \@setfontsize\normalsize{12bp}{20bp}% 212 | \abovedisplayskip=12bp \@plus 2bp \@minus 2bp 213 | \abovedisplayshortskip=12bp \@plus 2bp \@minus 2bp 214 | \belowdisplayskip=\abovedisplayskip 215 | \belowdisplayshortskip=\abovedisplayshortskip} 216 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 217 | %% 页面设置 218 | %% 研究生:页边距上下3.8cm,左右3.2cm,页眉页脚3.0cm,装订线0cm 219 | %% 本科生:页边距上2.0cm,下2.2cm,左2.6cm,右2.0cm 220 | %% TODO: 根据Word设置结果微调,另本科生规范中页边距太小,未采用 221 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 222 | % \ifzzu@bachelor 223 | % \geometry{left=2.6cm,right=2.0cm,top=2.0cm,bottom=2.2cm,includeheadfoot} 224 | % \else 225 | % \geometry{left=3.2cm,right=3.2cm,top=3.8cm,bottom=3.8cm,includeheadfoot} 226 | % \fi 227 | \geometry{ 228 | a4paper, % 210 * 297mm 229 | hcentering, 230 | vcentering, 231 | ignoreall, 232 | nomarginpar, 233 | left=32mm, 234 | top=38mm} 235 | \ctexset{% 236 | punct=quanjiao, 237 | space=auto, 238 | autoindent=true} 239 | \let\zzu@cleardoublepage\cleardoublepage 240 | \newcommand{\zzu@clearemptydoublepage}{%开始奇数新页面 241 | \clearpage{\pagestyle{empty}\zzu@cleardoublepage}} 242 | \let\cleardoublepage\zzu@clearemptydoublepage 243 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 244 | %% 页眉页脚 245 | %% 页眉:居中显示章节名称;宋体10.5磅居中,Abstract用Roman字体 246 | %% 页脚:居中显示页码;宋体10.5磅居中 247 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 248 | \def\ps@zzu@empty{%%No head or foot line. 249 | \let\@oddhead\@empty\let\@evenhead\@empty% 250 | \let\@oddfoot\@empty\let\@evenfoot\@empty} 251 | \def\ps@zzu@plain{%%No head, centred or right page number in foot. 252 | \let\@oddhead\@empty\let\@evenhead\@empty% 253 | \def\@oddfoot{\hfil\wuhao\thepage\ifzzu@bachelor\relax\else\hfil\fi}% 254 | \let\@evenfoot=\@oddfoot} 255 | \def\ps@zzu@headings{%%Centred head, centred page number in foot. 256 | \def\@oddhead{\vbox to\headheight{\vfill% 257 | \hb@xt@\textwidth{\wuhao\rmfamily\hfill\leftmark\hfill}% 258 | \vskip\tw@\p@\hbox{\vrule width\textwidth height.4\p@ depth\z@}}} 259 | \let\@evenhead=\@oddhead 260 | \def\@oddfoot{\wuhao\hfil\thepage\ifzzu@bachelor\relax\else\hfil\fi} 261 | \let\@evenfoot=\@oddfoot} 262 | \renewcommand{\chaptermark}[1]{\@mkboth{\thechapter\ ~~#1}{}} 263 | \newcommand*{\zzu@textcircled}[1]{\lower.7ex\hbox{\tikz\draw (0pt, 0pt)% 264 | circle (.5em) node {\makebox[1em][c]{\small #1}};}} 265 | \robustify{\zzu@textcircled} 266 | \setlist[enumerate,1]{label = (\arabic*)} 267 | \setlist[enumerate,2]{label = \arabic*)} 268 | \setlist[enumerate,3]{label = \zzu@textcircled{\arabic*}} 269 | \setlist{leftmargin=*, nosep} 270 | \setlist[1]{labelindent=\parindent} % Only the level 1 271 | \let\zzu@footnotesize\footnotesize%脚注字体及行距 272 | \renewcommand\footnotesize{\zzu@footnotesize\xiaowu[1.5]} 273 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 274 | %% 浮动对象、图片、表格、公式设置 275 | %% 1. 若插入的图片未指定扩展名,则在指定文件路径搜索pdf,eps,png,jpg,jpeg文件 276 | %% 搜索路径在主文件中定义; 277 | %% 2. 定义tabularx环境中的Z选项,用于居中自动调整,定义命令\Xhline 278 | %% 3. 公式、图片、表格编号分隔符为句号,即“3.1”的形式 279 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 280 | \setlength{\floatsep}{12bp \@plus4\p@\@minus\p@}%浮动对象和文字间的距离 281 | \setlength{\intextsep}{12bp \@plus4\p@\@minus\tw@\p@} 282 | \setlength{\textfloatsep}{12bp \@plus4\p@\@minus2\p@} 283 | \setlength{\@fptop}{0bp \@plus1.0fil} 284 | \setlength{\@fpsep}{12bp \@plus2.0fil} 285 | \setlength{\@fpbot}{0bp \@plus1.0fil} 286 | \renewcommand{\textfraction}{0.15}%页面文本的最小比例(0.2) 287 | \renewcommand{\topfraction}{0.85}%页顶浮动对象高/页高的最大值(0.7) 288 | \renewcommand{\bottomfraction}{0.50}%页底浮动对象高/页高的最大值(0.3) 289 | \renewcommand{\floatpagefraction}{0.80}%浮动页由浮动对象占用的最小比例(0.5) 290 | \DeclareGraphicsExtensions{.pdf,.eps,.png,.jpg,.jpeg}%搜索指定扩展名 291 | \DeclareCaptionLabelSeparator{zzu}{\hspace{\ccwd}}%图表序与图表名之间空一个汉字 292 | \DeclareCaptionFont{zzu}{\ifzzu@bachelor\xiaosi[1.25]\kaishu% 293 | \else\wuhao[1.5]\fi} 294 | \captionsetup{ 295 | font = zzu, 296 | labelsep = zzu, 297 | figureposition = bottom, 298 | tableposition = top, 299 | } 300 | \ifzzu@bachelor%段前空6磅,段后空12磅 301 | \captionsetup[table]{belowskip={12bp-\intextsep},aboveskip=6bp} 302 | \else%段前空6磅,段后空6磅 303 | \captionsetup[table]{belowskip={6bp},aboveskip=6bp} 304 | \fi 305 | \captionsetup[figure]{%段前空6磅,段后空12磅 306 | belowskip={12bp-\intextsep},aboveskip=6bp} 307 | \captionsetup[sub]{font=zzu,skip=6bp} 308 | \renewcommand{\thesubfigure}{(\alph{subfigure})}%子图形编号:字母 309 | \renewcommand{\thesubtable}{(\alph{subtable})}%子表格编号:字母 310 | \let\old@tabular\@tabular 311 | \def\zzu@tabular{\ifzzu@bachelor\xiaosi[1.25]\kaishu% 312 | \else\wuhao[1.5]\fi\old@tabular}% 313 | \let\zzu@LT@array\LT@array%长表格 314 | \def\LT@array{\ifzzu@bachelor\xiaosi[1.25]\kaishu% 315 | \else\wuhao[1.5]\fi\zzu@LT@array} 316 | \newcolumntype{Z}{>{\centering\arraybackslash}X}%居中自动调整 317 | \newcommand\Xhline[1]{\noalign{\ifnum0=`}\fi\arrayrulewidth#1% 318 | \ifx\hline\LT@hline\let\@xhline\LT@@hline\fi 319 | \hrule\@height\arrayrulewidth\futurelet\reserved@a\@xhline} 320 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 321 | %% 数学相关 322 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 323 | \renewcommand\theequation{%公式编号分隔符 324 | \ifnum \c@chapter>\z@ \thechapter.\fi\@arabic\c@equation} 325 | \allowdisplaybreaks[4]%允许公式断行分页 326 | \def\zzu@theorem@separator{:}% 327 | \newtheoremstyle{theorem}%定理类型 328 | {0.5ex}%Space above 329 | {0.5ex}%Space below 330 | {\rmfamily}%Body font 331 | {}%Indent amount 332 | {\sffamily}%Theorem head font 333 | {\zzu@theorem@separator}%Punctuation after theorem head 334 | {1em}%Space after theorem head 335 | {}%Theorem head spec 336 | \renewenvironment{proof}[1][\proofname]{\par%证明 337 | \pushQED{\qed}% 338 | \normalfont \topsep6\p@\@plus6\p@\relax 339 | \trivlist 340 | \item[\hskip\labelsep 341 | \sffamily 342 | #1\@addpunct{\quad}]\ignorespaces} 343 | {\popQED\endtrivlist\@endpefalse} 344 | \theoremstyle{theorem} 345 | \newtheorem{definition}{\zzu@definition@name}[chapter] 346 | \newtheorem{theorem}{\zzu@theorem@name}[chapter] 347 | \newtheorem{lemma}[theorem]{\zzu@lemma@name} 348 | \newtheorem{corollary}[theorem]{\zzu@corollary@name} 349 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 350 | %% 章节标题 351 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 352 | \ctexset{% 353 | chapter={%一级标题:黑体16磅,段前24磅,段后18磅 354 | afterindent=true, 355 | pagestyle={zzu@headings}, 356 | beforeskip={\ifzzu@bachelor 15bp\else 9bp\fi}, 357 | aftername=\hskip\ccwd, 358 | afterskip={\ifzzu@bachelor 20bp\else 24bp\fi}, 359 | format={\sffamily\sanhao[1]}, 360 | name=\relax, 361 | nameformat=\relax, 362 | titleformat=\relax, 363 | lofskip=0pt, 364 | lotskip=0pt, 365 | }, 366 | section={%二级标题:黑体14磅,段前24磅,段后6磅 367 | afterindent=true, 368 | beforeskip={\ifzzu@bachelor 25bp\else 24bp\fi\@plus .5ex \@minus .2ex}, 369 | afterskip={\ifzzu@bachelor 12bp\else 6bp\fi \@plus .2ex}, 370 | format={\sffamily\ifzzu@bachelor\sihao[1.286]\else\sihao[1.429]\fi}, 371 | }, 372 | subsection={%三级标题:段前12磅,段后6磅 373 | afterindent=true, 374 | indent={\ifzzu@bachelor\parindent%本科缩进两字符 375 | \else 0pt\fi},%硕博 376 | beforeskip={12bp \@plus .5ex \@minus .2ex}, 377 | afterskip={6bp \@plus .2ex}, 378 | format={\sffamily\ifzzu@bachelor\xiaosi[1.25]%本科 379 | \else\banxiaosi[1.538]\fi},%硕博黑体13磅 380 | }, 381 | subsubsection={%四级标题:段前12磅,段后6磅 382 | afterindent=true, 383 | indent={\ifzzu@bachelor\parindent%本科缩进两字符 384 | \else 0pt\fi},%硕博 385 | beforeskip={12bp \@plus .5ex \@minus .2ex}, 386 | afterskip={6bp \@plus .2ex}, 387 | format={\ifzzu@bachelor\xiaosi[1.25]%本科 388 | \else\sffamily\xiaosi[1.667]\fi},%硕博 389 | }, 390 | paragraph/afterindent=true, 391 | subparagraph/afterindent=true} 392 | \newcounter{zzu@bookmark} 393 | \def\zzu@chapter*{%\zzu@chapter*[tocline]{title}[header] 394 | %% \@ifnextchar peeks at the following character and compares it with its first argument. 395 | %% If both are the same it executes its second argument, otherwise its third. 396 | \@ifnextchar [ % ] 397 | {\zzu@@chapter} 398 | {\zzu@@chapter@}} 399 | \def\zzu@@chapter@#1{\zzu@@chapter[#1]{#1}} 400 | \def\zzu@@chapter[#1]#2{% 401 | \@ifnextchar [ % ] 402 | {\zzu@@@chapter[#1]{#2}} 403 | {\zzu@@@chapter[#1]{#2}[]}} 404 | \def\zzu@@@chapter[#1]#2[#3]{% 405 | \ifzzu@doctor\cleardoublepage\else\clearpage\fi\phantomsection% 406 | \def\@tmpa{#1} 407 | \def\@tmpb{#3} 408 | \ifx\@tmpa\@empty 409 | \addtocounter{zzu@bookmark}\@ne 410 | \pdfbookmark[0]{#2}{zzuchapter.\thezzu@bookmark} 411 | \else 412 | \addcontentsline{toc}{chapter}{#1} 413 | \fi 414 | \chapter*{#2} 415 | \ifx\@tmpb\@empty 416 | \@mkboth{#2}{#2} 417 | \else 418 | \@mkboth{#3}{#3} 419 | \fi} 420 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 421 | %% 目录及图表清单 422 | %% 目录利用titletoc宏包对目录进行定制 423 | %% 424 | %% 各章目录:宋体14磅,单倍行距,段前6磅,段后0磅 425 | %% 两端对齐,页码右对齐 426 | %% 一级标题:宋体12磅,单倍行距,段前6磅,段后0磅 427 | %% 左缩进2字符,两端对齐,页码右对齐 428 | %% 二级标题:宋体10.5磅,单倍行距,段前6磅,段后0磅 429 | %% 左缩进4字符,两端对齐,页码右对齐 430 | %% 图和附表清单:宋体10.5磅,行距16磅 431 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 432 | \setcounter{secnumdepth}{3}%章节编号深度:4 433 | \setcounter{tocdepth}{2}%目录深度:2 434 | \renewcommand\tableofcontents{% 435 | \zzu@chapter*[]{\contentsname} 436 | \@starttoc{toc}\normalsize} 437 | \renewcommand\listoffigures{%本科无图和附表清单 438 | \ifzzu@bachelor\relax\else 439 | \zzu@chapter*[]{\listfigurename} 440 | \@starttoc{lof}\fi} 441 | \renewcommand\listoftables{% 442 | \ifzzu@bachelor\relax\else 443 | \zzu@chapter*[]{\listtablename} 444 | \@starttoc{lot}\fi} 445 | \titlecontents{chapter}[\z@]{\vspace{6bp}\sihao[1]} 446 | {{\thecontentslabel}\quad}{} 447 | {\hspace{.5em}\titlerule*{.}\xiaosi\contentspage} 448 | \titlecontents{section}[2\ccwd]{\vspace{6bp} \xiaosi[1]} 449 | {\thecontentslabel\quad}{} 450 | {\hspace{.5em}\titlerule*{.}\xiaosi\contentspage} 451 | \titlecontents{subsection}[4\ccwd]{\vspace{6bp} \wuhao[1]} 452 | {\thecontentslabel\quad}{} 453 | {\hspace{.5em}\titlerule*{.}\xiaosi\contentspage} 454 | \titlecontents{figure}[\z@]{\wuhao[1.524]}%10.5bp,16bp 455 | {\makebox[3.5em][l]{\figurename~\thecontentslabel\quad}}{} 456 | {\hspace{.5em}\titlerule*{.}\contentspage} 457 | \titlecontents{table}[\z@]{\wuhao[1.524]}%10.5bp,16bp 458 | {\makebox[3.5em][l]{\tablename~\thecontentslabel\quad}}{} 459 | {\hspace{.5em}\titlerule*{.}\contentspage} 460 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 461 | %% 封面 462 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 463 | \def\zzu@def@term#1{%定义封面的一些替换命令 464 | \expandafter\gdef\csname #1\endcsname##1{% 465 | \expandafter\gdef\csname zzu@#1\endcsname{##1}} 466 | \csname #1\endcsname{}} 467 | \zzu@def@term{schoolcode} 468 | \zzu@def@term{id} 469 | \zzu@def@term{secretlevel} 470 | \zzu@def@term{protitle} 471 | \zzu@def@term{ctitle} 472 | \zzu@def@term{cauthor} 473 | \zzu@def@term{stuno} 474 | \zzu@def@term{csupervisor} 475 | \zzu@def@term{csubject} 476 | \zzu@def@term{cmajor} 477 | \zzu@def@term{cdepartment} 478 | \zzu@def@term{cdate} 479 | \zzu@def@term{submitdate} 480 | \zzu@def@term{etitle} 481 | \zzu@def@term{eauthor} 482 | \zzu@def@term{esupervisor} 483 | \zzu@def@term{emajor} 484 | \zzu@def@term{edepartment} 485 | \zzu@def@term{edate} 486 | \ifzzu@bachelor 487 | \submitdate{\CJK@todaysmall}% 488 | \cdate{\CJK@todaysmall}% 489 | \else 490 | \cdate{\CJK@todaysmall@short}% 491 | \fi 492 | \edate{\ifcase \month \or January\or February\or March\or April\or May% 493 | \or June\or July \or August\or September\or October\or November 494 | \or December\fi\unskip,\ \ \the\year} 495 | \newcommand\zzu@underline[2][6em]{% 496 | \hskip\p@\underline{\hb@xt@ #1{\hss#2\hss}}\hskip3\p@} 497 | \newlength{\zzu@title@width} 498 | \def\zzu@put@title#1{\makebox{\hb@xt@\zzu@title@width{#1}}} 499 | \newcommand{\zzu@first@titlepage}{%论文中文封面 500 | \thispagestyle{zzu@empty} 501 | \begin{center} 502 | \ifzzu@bachelor%%本科毕业论文 503 | \vspace*{2.4cm} 504 | {\includegraphics{zzubachelor}} 505 | \par\vskip2.4cm 506 | \hspace*{1cm}\sffamily\sanhao\zzu@bachelor@title@pre\zzu@title@sep 507 | \parbox[t]{10cm}{% 508 | \setbox0=\hbox{{\sanhao[1.55]\zzu@ctitle}} 509 | \begin{picture}(0,0)(0,0) 510 | \setlength\unitlength{1cm} 511 | \linethickness{.5\p@} 512 | \put(0,-0.25){\line(1,0){10}} 513 | \ifdim\wd0>10cm 514 | \put(0,-1.12){\line(1,0){10}} 515 | \fi 516 | \end{picture}% 517 | \ignorespaces\sanhao[1.55]\zzu@ctitle\par 518 | \setbox0=\hbox{{\sanhao[1.55]\zzu@etitle}} 519 | \begin{picture}(0,0)(0,0) 520 | \setlength\unitlength{1cm} 521 | \linethickness{.5\p@} 522 | \put(0,-0.25){\line(1,0){10}} 523 | \ifdim\wd0>10cm 524 | \put(0,-1.12){\line(1,0){10}} 525 | \fi 526 | \end{picture}% 527 | \ignorespaces\sanhao[1.55]\zzu@etitle\par 528 | \vskip.5cm 529 | \setlength{\zzu@title@width}{2.8cm} 530 | \zzu@put@title{\zzu@supervisor@title\zzu@title@sep}% 531 | \zzu@underline[3cm]{\hfill\zzu@csupervisor\hfill}\hfill 532 | \setlength{\zzu@title@width}{1.8cm} 533 | \zzu@put@title{\zzu@protitle@title\zzu@title@sep}% 534 | \zzu@underline[2cm]{\hfill\zzu@protitle\hfill}}\par 535 | \vspace*{\stretch{1}} 536 | \hspace*{0.8cm}\parbox[t][4.0cm][t]{22em}{{\xiaosan[1.8]\rmfamily 537 | \setlength{\zzu@title@width}{4\ccwd} 538 | \zzu@put@title{\zzu@author@title}\zzu@title@sep% 539 | \zzu@underline[6em]{\zzu@cauthor}\hspace*{8bp} 540 | \zzu@stuno@title\zzu@title@sep\zzu@underline[8em]{\zzu@stuno}\par 541 | \zzu@put@title{\zzu@major@title}\zzu@title@sep% 542 | \zzu@underline[18em]{\zzu@cmajor}\par 543 | \zzu@put@title{\zzu@department@title}\zzu@title@sep% 544 | \zzu@underline[18em]{\zzu@cdepartment}\par 545 | \zzu@put@title{\zzu@cdate@title}\zzu@title@sep% 546 | \zzu@underline[18em]{\zzu@cdate}\par}} 547 | \vspace*{\stretch{1}} 548 | \begin{center} 549 | {\xiaosan\rmfamily\zzu@submitdate} 550 | \end{center} 551 | \else%研究生学位论文 552 | \noindent\begin{minipage}{.49\textwidth} 553 | \begin{flushleft} 554 | \includegraphics[width=3.35cm]{zzulogo} 555 | \end{flushleft} 556 | \end{minipage} 557 | \hfill 558 | \noindent\begin{minipage}{.49\textwidth} 559 | \begin{flushright} 560 | \kaishu\sihao 561 | \setlength{\zzu@title@width}{6em} 562 | \begin{tabular}{p{\zzu@title@width}@{~}l} 563 | \zzu@put@title{\zzu@schoolcode@title} & 564 | \zzu@underline[9em]{\zzu@schoolcode}\\[1ex] 565 | \zzu@put@title{\zzu@id@title} & 566 | \zzu@underline[9em]{\zzu@id}\\[1ex] 567 | \zzu@put@title{\zzu@secretlevel@title} & 568 | \zzu@underline[9em]{\zzu@secretlevel}\\ 569 | \end{tabular} 570 | \end{flushright} 571 | \end{minipage} 572 | \vskip \stretch{1} 573 | \begin{center} 574 | {\includegraphics{zzu}} 575 | \par\vskip.6cm 576 | {\ziju{0.5}\xiaochu\sffamily\zzu@subtitle} 577 | \vskip \stretch{1} 578 | \kaishu\erhao[1.5] \zzu@ctitle 579 | \vskip \stretch{1} 580 | \setlength{\zzu@title@width}{4\ccwd} 581 | \kaishu\sanhao[1.25] 582 | \def\tabcolsep{\p@}%\tabcolsep:tabular环境中两列标准间隔的一半 583 | \def\arraystretch{1.5}%\arraystretch表格行距的缩放比例因子(缺省为1) 584 | \begin{tabular}{p{\zzu@title@width}l@{}l} 585 | \zzu@put@title{\zzu@author@title} & \zzu@title@sep & 586 | \zzu@underline[150pt]{\zzu@cauthor} 587 | \\ 588 | \zzu@put@title{\zzu@supervisor@title} & \zzu@title@sep & 589 | \zzu@underline[150pt]{\zzu@csupervisor\hspace{\ccwd}\zzu@protitle} 590 | \\ 591 | \zzu@put@title{\zzu@subject@title} & \zzu@title@sep & 592 | \zzu@underline[150pt]{\zzu@csubject} 593 | \\ 594 | \zzu@put@title{\zzu@major@title} & \zzu@title@sep & 595 | \zzu@underline[150pt]{\zzu@cmajor} 596 | \\ 597 | \ifzzu@doctor\else 598 | \zzu@put@title{\zzu@department@title} & \zzu@title@sep & 599 | \zzu@underline[150pt]{\zzu@cdepartment} 600 | \\ 601 | \fi 602 | \zzu@put@title{\zzu@cdate@title} & \zzu@title@sep & 603 | \zzu@underline[150pt]{\zzu@cdate} 604 | \end{tabular}\\ 605 | \vskip \stretch{1} 606 | \end{center} 607 | \fi 608 | \end{center}} % end of titlepage 609 | \newcommand{\zzu@engcover}{%硕士和博士论文英文封面 610 | \thispagestyle{zzu@empty} 611 | \vspace*{1cm} 612 | \begin{center} 613 | \parbox[t][5.8cm][t]{\paperwidth-7.2cm}{ 614 | \renewcommand{\baselinestretch}{1.5} 615 | \ifzzu@master 616 | \begin{center} 617 | \sanhao A thesis submitted to\\ 618 | {\bfseries Zhengzhou University}\\ 619 | for the degree of Master\\ 620 | \end{center} 621 | \else 622 | \begin{center} 623 | \sanhao A dissertation submitted to\\ 624 | {\bfseries Zhengzhou University}\\ 625 | for the degree of Doctor\\ 626 | \end{center} 627 | \fi} 628 | \vskip \stretch{1} 629 | \parbox[t][5.2cm][t]{\paperwidth-7.2cm}{ 630 | \renewcommand{\baselinestretch}{1.5} 631 | \begin{center} 632 | \sanhao\bfseries\zzu@etitle 633 | \end{center}} 634 | \vskip \stretch{2} 635 | \parbox[t][3.6cm][b]{\paperwidth-7.2cm}{ 636 | \renewcommand{\baselinestretch}{1.5} 637 | \begin{center} 638 | \sanhao 639 | By\quad{}\zzu@eauthor\par 640 | Supervisor :\quad\zzu@esupervisor\par 641 | \zzu@emajor\par 642 | \zzu@edepartment\par 643 | \zzu@edate 644 | \end{center}} 645 | \vfill 646 | \end{center}} 647 | \newcommand{\zzu@declarename}{学位论文原创性声明} 648 | \newcommand{\zzu@authtitle}{学位论文使用授权声明} 649 | \newcommand{\zzu@authorsig}{学位论文作者:} 650 | \newcommand{\zzu@declaretext}{\hspace{2\ccwd} 651 | 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究所取得的成果 652 | 。除文中已经注明引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写过的 653 | 科研成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本声 654 | 明的法律责任由本人承担。} 655 | \newcommand{\zzu@declaredate}{日\hspace{\ccwd} 期:\hspace{4\ccwd} 年\hspace{2\ccwd} 月\hspace{2\ccwd} 日} 656 | \newcommand{\zzu@authorization}{\hspace{2\ccwd} 657 | 本人在导师指导下完成的论文及相关的职务作品,知识产权归属郑州大学。根据郑州大学 658 | 有关保留、使用学位论文的规定,同意学校保留或向国家有关部门或机构送交论文的复印 659 | 件和电子版,允许论文被查阅和借阅;本人授权郑州大学可以将本学位论文的全部或部分 660 | 编入有关数据库进行检索,可以采用影印、缩印或其他复制手段保存论文和汇编本学位论 661 | 文。本人离校后发表、使用学位论文或与该学位论文直接相关的学术论文或成果时,第一 662 | 署名单位仍然为郑州大学。保密论文在解密后应遵守此规定。} 663 | \newcommand{\zzu@authdate}{日\hspace{\ccwd} 期:\hspace{4\ccwd} 年\hspace{2\ccwd} 月\hspace{2\ccwd} 日} 664 | \newcommand{\zzu@authorization@mk}{%原创性声明及授权声明 665 | \thispagestyle{zzu@empty} 666 | \vspace*{\stretch{1}} 667 | \begin{center} 668 | \sffamily\sanhao \zzu@declarename 669 | \end{center} 670 | \vskip 20pt 671 | \xiaosi[2]\zzu@declaretext 672 | \vskip 20pt 673 | \zzu@authorsig\hfill\zzu@declaredate\hspace*{2\ccwd} 674 | \vspace*{\stretch{2}} 675 | \begin{center} 676 | \sffamily\sanhao \zzu@authtitle 677 | \end{center} 678 | \vskip 20pt 679 | \xiaosi[2]\zzu@authorization 680 | \vskip 20pt 681 | \zzu@authorsig\hfill\zzu@authdate\hspace*{2\ccwd} 682 | \vspace*{\stretch{2}}} 683 | \def\zzu@setup@pdfinfo{%pdf文档信息 684 | \hypersetup{% 685 | pdftitle={\zzu@ctitle}, 686 | pdfauthor={\zzu@cauthor}, 687 | pdfsubject={\zzu@schoolname\zzu@subtitle}, 688 | pdfkeywords={\zzu@ckeywords}, 689 | pdfcreator={\zzuthesis-v\version}}} 690 | \newcommand{\makecover}{%制作封面 691 | \zzu@setup@pdfinfo 692 | \phantomsection 693 | \pdfbookmark[-1]{\zzu@ctitle}{ctitle} 694 | \normalsize% 695 | \begin{titlepage} 696 | \zzu@first@titlepage 697 | \ifzzu@bachelor\clearpage 698 | \else 699 | \ifzzu@doctor\cleardoublepage\else\clearpage\fi 700 | \zzu@engcover 701 | \ifzzu@doctor\cleardoublepage\else\clearpage\fi 702 | \zzu@authorization@mk 703 | \fi% 704 | \end{titlepage} 705 | \normalsize 706 | \zzu@makeabstract 707 | \let\@tabular\zzu@tabular 708 | } 709 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 710 | %% 中英文摘要及关键词 711 | %% 中文摘要部分的标题为"摘要"(本科为"中文摘要",黑体三号字) 712 | %% 关键词之间空两个汉字符宽度,悬挂缩进 713 | %% 英文摘要部分的标题为 Abstract,用 Arial 体三号字 714 | %% 关键词之间空四个英文字符宽度,悬挂缩进 715 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 716 | \newcommand{\zzu@@cabstract}[1]{\long\gdef\zzu@cabstract{#1}} 717 | \newenvironment{cabstract}{\Collect@Body\zzu@@cabstract}{} 718 | \newcommand{\zzu@@eabstract}[1]{\long\gdef\zzu@eabstract{#1}} 719 | \newenvironment{eabstract}{\Collect@Body\zzu@@eabstract}{} 720 | \def\zzu@parse@keywords#1{ 721 | \define@key{zzu}{#1}{\csname #1\endcsname{##1}} 722 | \expandafter\gdef\csname zzu@#1\endcsname{} 723 | \expandafter\gdef\csname #1\endcsname##1{ 724 | \@for\reserved@a:=##1\do{ 725 | \expandafter\ifx\csname zzu@#1\endcsname\@empty\else 726 | \expandafter\g@addto@macro\csname zzu@#1\endcsname{% 727 | \ignorespaces\csname zzu@#1@separator\endcsname} 728 | \fi 729 | \expandafter\expandafter\expandafter\g@addto@macro% 730 | \expandafter\csname zzu@#1\expandafter\endcsname\expandafter{\reserved@a}}}} 731 | \zzu@parse@keywords{ckeywords} 732 | \zzu@parse@keywords{ekeywords} 733 | \newbox\zzu@kw 734 | \newcommand\zzu@put@keywords[2]{% 735 | \begingroup 736 | \setbox\zzu@kw=\hbox{#1} 737 | \ifzzu@bachelor\indent\else\noindent\hangindent\wd\zzu@kw\hangafter1\fi% 738 | \box\zzu@kw#2\par 739 | \endgroup} 740 | \newcommand{\zzu@makeabstract}{% 741 | \ifzzu@doctor\cleardoublepage\else\clearpage\fi 742 | \zzu@chapter*[]{\cabstractname} % no tocline 743 | \pagestyle{zzu@headings} 744 | \pagenumbering{Roman} 745 | \zzu@cabstract 746 | \vskip12bp 747 | \zzu@put@keywords{\textbf\zzu@ckeywords@title}{\zzu@ckeywords} 748 | \zzu@chapter*[]{\eabstractname} % no tocline 749 | \zzu@eabstract 750 | \vskip12bp 751 | \zzu@put@keywords{% 752 | \textbf{\ifzzu@bachelor Keywords:\else Key Words:\fi\enskip}}{\zzu@ekeywords}% 753 | } 754 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 755 | %% 主要符号对照表 756 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 757 | \newenvironment{denotation}[1][2.5cm]{ 758 | \ifzzu@doctor\cleardoublepage\else\clearpage\fi 759 | \zzu@chapter*[]{\zzu@denotation@name} 760 | \noindent\begin{list}{}% 761 | {\vskip-30bp\wuhao[1.524]%宋体五号(10.5磅),行距16磅 762 | \renewcommand\makelabel[1]{##1\hfil} 763 | \setlength{\labelwidth}{#1}%标签盒子宽度 764 | \setlength{\labelsep}{0.5cm}%标签与列表文本距离 765 | \setlength{\itemindent}{0cm}%标签缩进量 766 | \setlength{\leftmargin}{\labelwidth+\labelsep}%左边界 767 | \setlength{\rightmargin}{0cm} 768 | \setlength{\parsep}{0cm}%段落间距 769 | \setlength{\itemsep}{0cm}%标签间距 770 | \setlength{\listparindent}{0cm}%段落缩进量 771 | \setlength{\topsep}{\z@}%标签与上文的间距 772 | }}{\end{list}} 773 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 774 | %% 致谢 775 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 776 | \newenvironment{ack}{% 777 | \ifzzu@doctor\cleardoublepage\else\clearpage\fi 778 | \zzu@chapter*{\zzu@ackname} 779 | \fangsong\xiaosi[1.524]%仿宋五号,固定行距16磅 780 | }{} 781 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 782 | %% 综述 783 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 784 | \newenvironment{review}{% 785 | \ifzzu@doctor\cleardoublepage\else\clearpage\fi 786 | \ctexset{chapter/format+=\raggedright} 787 | \zzu@chapter*{\zzu@review@title} 788 | \begin{center} 789 | \sanhao[1.55] 790 | \zzu@ctitle \\ 791 | 综述 \zzu@cauthor\hspace{2em} 审校 \zzu@csupervisor 792 | \end{center} 793 | \fangsong\xiaosi[1.524]%仿宋五号,固定行距16磅 794 | }{} 795 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 796 | %% 参考文献环境 797 | %% 1. 文献作者不超过3位时,全部列出;超过时只列前3位,后面加“等”或相应外文; 798 | %% 2. 作者姓名之间用“,”分开,建议根据《中国高校自然科学学报编排规范》的要求 799 | %% 书写参考文献,并按引用顺序将其附于文末,该规范建议根据国标书写参考文献。 800 | %% 3. 引用参考文献的位置,上标标注[参考文献序号] 801 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 802 | \bibpunct{[}{]}{,}{s}{}{,} 803 | \renewcommand\NAT@citesuper[3]{\ifNAT@swa% 804 | \unskip\kern\p@\textsuperscript{\NAT@@open #1\NAT@@close}% 805 | \if*#3*\else\ (#3)\fi\else #1\fi\endgroup} 806 | \DeclareRobustCommand\onlinecite{\@onlinecite} 807 | \def\@onlinecite#1{\begingroup\let\@cite\NAT@citenum\citep{#1}\endgroup} 808 | \renewenvironment{thebibliography}[1]{% 809 | \zzu@chapter*{\bibname}% 810 | \wuhao[1.524]%宋体五号,行距16磅 811 | \list{\@biblabel{\@arabic\c@enumiv}}% 812 | {\renewcommand{\makelabel}[1]{##1\hfill} 813 | \settowidth\labelwidth{1.1cm} 814 | \setlength{\labelsep}{0.4em} 815 | \setlength{\itemindent}{\z@} 816 | \setlength{\leftmargin}{\labelwidth+\labelsep} 817 | \addtolength{\itemsep}{-0.7em} 818 | \usecounter{enumiv}% 819 | \let\p@enumiv\@empty 820 | \renewcommand\theenumiv{\@arabic\c@enumiv}}% 821 | \sloppy\frenchspacing 822 | \clubpenalty4000 823 | \@clubpenalty \clubpenalty 824 | \widowpenalty4000% 825 | \interlinepenalty4000% 826 | \sfcode`\.\@m} 827 | {\def\@noitemerr 828 | {\@latex@warning{Empty `thebibliography' environment}}% 829 | \endlist\frenchspacing} 830 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 831 | %% 附录 832 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 833 | \let\zzu@appendix\appendix 834 | \renewenvironment{appendix}{% 835 | \zzu@appendix 836 | \gdef\@chapapp{\appendixname~\thechapter} 837 | \renewcommand\theequation{% 838 | \ifnum \c@chapter>\z@ \thechapter\fi\@arabic\c@equation} 839 | }{} 840 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 841 | %% 个人简历、在学期间发表的学术论文及研究成果 842 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 843 | \newenvironment{resume}[1][\zzu@resume@title]{% 844 | \zzu@chapter*{#1}\wuhao[1.524]}{} 845 | \newcommand{\resumeitem}[1]{\vspace{2em}{\sihao\sffamily{#1}}\vspace{.5em}\par} 846 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 847 | %% 延迟的代码 (Delaying code) 848 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 849 | \AtEndOfClass{\sloppy} 850 | \endinput 851 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 852 | %% End of file `zzuthesis.cls'. 853 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% --------------------------------------------------------------------------------