zoukankan      html  css  js  c++  java
  • Tex学习笔记

    唔,以前零零散散学过一些,但是。。。不用的东西学了总是忘记,而且,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 withdocument 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, floating material,etc. 

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

    3, 

  • 相关阅读:
    [debug]重定义默认參数
    UVA 1329 Corporative Network【并查集】
    fork同一时候创建多个子进程的方法
    CSS3弹性布局内容对齐(justify-content)属性使用具体解释
    python监控linux性能以及进程消耗的性能
    Android实战简易教程-第十三枪(五大布局研究)
    Linux 截图
    (hdu step 7.1.6)最大三角形(凸包的应用——在n个点中找到3个点,它们所形成的三角形面积最大)
    【SPOJ-GSHOP】Rama and Friends【贪心】【细节】
    【编程题目】在字符串中找出连续最长的数字串,并把这个串的长度返回
  • 原文地址:https://www.cnblogs.com/pied/p/2428978.html
Copyright © 2011-2022 走看看