Git Product home page Git Product logo

master-thesis's Introduction

上海大学硕士学位论文LaTex模板

这是我的硕士学位论文,使用LaTex排版,欢迎大家使用,也欢迎大家观摩论文内容:http://kaiz.xyz/master-thesis.pdf

LaTex vs Word

Latex的优点

  1. 最大的优点是免费;
  2. 优美的数学公式渲染,而且熟悉之后打公式打得非常快,特别是非常复杂的积分运算,这一点office系列软件我还没发现有超过LaTex的地方;
  3. 方便的图表、公式和参考文献的交叉引用,这是我用LaTex的主要原因。当你有很多图表,公式和参考文献,并且要在正文中反复引用的时候,这些图表、公式和文献的标号将会让你头疼,特别是当你写好之后想在中间插入新的图表或者公式,修改后面图表的标号以及正文中引用的标号将非常麻烦(Word中有没有方便的做法我不确定);
  4. 支持矢量图插入;如果论文中需要插入Matlab或者R等生成的曲线图,转换成png/jpg之后插到论文中放大会不清晰,你可以另存为esp矢量图,这样不论你放大多少倍图表依然清晰如故,参考我论文中图3.3图3.5;
  5. 更加专业的排版,比如英语单词的换行,Latex会根据音节的完整性对单词进行换行;
  6. 很多学术出版物只接受Latex的投稿。

Latex的缺点

  1. 不能马上预览排版的结果,需要编译过程;
  2. 对中文支持还不太友好;
  3. 中文的资料比较少,可能编译报错之后有可能搜不到中文的资料,这时候你就懵了。

使用说明

我在Win7&Win10的Texlive2016环境下能够编译通过。这里我推荐大家使用TexLive这个发行版。TexLive跨平台,有Windows,Ubuntu和Mac版本,而且它的包管理器也很方便。

Tex编辑器我推荐TexMaker,推荐的原因也是:1)跨平台,2)可以分栏预览,不像Texlive自带的编辑器,需要新开一个窗口预览PDF。

编译的时候需要注意的

  • 当前这个版本并没有写封面、中英文摘要这些部分,只用Latex写了正文。所以你需要用Word写目录之前的所有内容,然后导出PDF,最后在源代码中使用\includepdf[pages={1-8}]{cover.pdf}导入它们。关于这部分,请参考源代码中我的注释

关于参考文献是[?]的问题

很多同学们第一次编译,或者是更新了.bib文件之后发现正文中的参考文献标号全是'[?]'。如果你向.bib文件中更新了新的参考文献或者是第一次编译,你需要:

  1. 使用pdflatex编译.tex文件;
  2. 使用biblatex编译.aux文件
  3. 重复step1两次。

至于为什么要这么做,我也不知道。如果你是TexMaker用户,你可以在'选项->配置TexMaker->快速构建'中将'快速构建命令'设置为pdflatex+bib(la)tex+两次pdflatex+查看pdf,这样每次点击快速构建将自动完成以上3步。

相比只用pdflatex编译.tex文件,完成以上三步比较耗时。因此在**没有更新.bib**文件的时候只需要用pdflatex编译.tex源文件即可。建议只在更改了.bib参考文献的情况下使用'三步编译'。这并不意味着你需要反复配置Texmaker,你只需要在点击编译按钮的时候选择不同的编译模式即可(其它LaTex环境也应该有类似功能)。

关于字体问题

如果你在Linux或者是Mac上使用LaTex,特别如果你的系统是英文的,很可能会没有相关的字体造成编译报错。我提供了一个脚本download-fonts.sh,使用这个脚本即可下载所需字体。既然你在Linux上使用LaTex,我相信怎么使用这个脚本不需要我详细说明。

关于英文换行的问题

很多时候你会发现当某一行既有汉字又有英文的时候,换行的时候英文的排版不太对。这是因为英文天然用空白分隔单词,而汉语没有这个特性。当汉字和字母混合的时候,LaTex就无法正确的分隔单词了。我建议所有的汉字和单词都用空白符分隔开,这样就不会出现排版问题。

无法下载/下载速度慢

由于众所周知的原因,在国内可能你从Github上下载的速度比较慢,我提供了另外一个链接,你可以直接下载整个代码包:点击下载


如果使用过程中有什么问题,你可以:

  1. issue tracker里提个issue,基本上我都会及时回复;
  2. 直接发邮件给我 zhaok1206在gmail点com

推荐大家使用1),好处是a)其他人如果有相似的问题就可以很方便搜到,b)可以有其他更多的人参与讨论解决问题。

master-thesis's People

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.