首页 > 其他 > 详细

Tex学习笔记

时间:2015-04-03 17:13:07      阅读:138      评论:0      收藏:0      [点我收藏+]

唔,以前零零散散学过一些,但是。。。不用的东西学了总是忘记,而且,tex玩意真的是。。。不暴粗口了,很专业吧。

1,各种Tex的关系(注意区分engine和format)。

1)Knuth同志在N年前,据说是二十年,开发了一种排版用的语言叫Tex,事实上据说只是一些命令。天知道那些命令怎么工作的,只是很明显几乎没人用这300多条指令去制作文档。后来,他又写了一个engine 叫做PlainTex,PlainTex有600多条宏指令,也就是Tex包括语言的原语和engine用的宏命令,有900多条!会死人的阿亲!这个Tex engine的输出为DVI文件,Device Independent 设备独立的意思。事实上,那时候做出个到处可以用的文件可真了不得了。咳,一个人设计总是会有缺陷的。于是,后来又有人又用Tex的原语做了一些格式包,恩,你可以更高一级的用这些包来处理文档,命令更少功能看起来也更加一目了然,也就是Latex这个新格式的诞生。 额,还有个和LaTex并列的怪胎存在叫Context,不过貌似没LaTex那么招人喜欢。

2)编译engine呢,前后有Knuth同志写的Tex,有为了产生PDF文档而设计的pdfTex,为了支持unicode(ascii是定长的字符,但是unicode是不定长度的,如中文)而产生的XeTex,还有后来的加入了script语言的perlTex,LuaTex之类;这些engine都有支持Tex和LaTex,如XeTex对应的也有XeLaTex engine。

3)当然,我们现在用的编译engine多是TexLive之类,上面这些engin都有加到一起。为什么同样是latex,xetex能编译的,pdftex就不能编译了呢? 我猜是编译器编译宏的区别,还有不同engine会提供很多不同的package供使用,当然你也可以猜,重要的是,虽然都叫Tex或者LaTex,各种编译engine中是不能互通的。至少我现在看到的是这样,不对的请指点。

4)据说平常做做技术文档,交报告什么的,luatex就够了,公司也提倡用这个。所以,也就用这个了= =。它使用的engine是XeLaTex。

 

2, LaTex简介(摘自文档《A guide to LuaLATEX》)

As you probably know, LATEX is the general framework in which documents begin with\document class, packages are loaded with \usepackage, fonts are selected in a clever way(so that you can switch to boldface while preserving italics), pages are build with complicated algorithms including support for headers, footers, footnotes, margin notes, ?oating material,etc. 

简介如上,事实上到现在为止,除了往模板里填东西,其他的我还什么都不知道。 

 

3, 

Tex学习笔记

原文:http://www.cnblogs.com/pied/p/2428978.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!