zoukankan      html  css  js  c++  java
  • 在Linux 系统 Latex安装 使用入门教程

    来源: http://blog.chinaunix.net/u/25605/showart_2100398.html

     入门介绍好文:TeX、LaTeX、TeXLive 小结

    笔记详情:http://visayafan.com/others/o/latex-lyx.html#sec-14-3

    一、安装TexLive+Latex+CJK:

    打开终端,安装以下TexLive和常用的一些Latex宏包(可以根据自己的需要增改):

    sudo apt-get install   
    texlive texlive-math-extra texlive-latex-base   
    texlive-latex-extra texlive-latex-recommended   
    texlive-pictures texlive-science latex-beamer   
    texlive-common texlive-bibtex-extra 

    如果硬盘充裕的话,直接完整安装也可以:

    sudo apt-get install texlive-full latex-beamer
    

    安装完后,就可以安装CJK的相关软件包了,如果只需要获得中文支持,那么执行:

    sudo apt-get install latex-cjk-chinese ttf-arphic-* hbf-*
    

    否则,建议安装latex-cjk-all以获取完整支持。

    二、生成中文字体包

    安装好TexLive+CJK以后,还需要安装一个软件──fontforge用于生成字体:

    sudo apt-get install fontforge

    好了,前面所做的,都是标准的Debian式安装,假如哪天你不需要了,直接remove安装即可。

    生成字体前,请自己准备你需要生成的字体文件:simsun.ttc,simhei.ttf(要自己下载,或者从windows C盘里找到)等,这里以simsun.ttc(宋体)为例。

    准备好后下载下面这个包,解压到一个地方,如自己的主目录~/font:

    font.tar.bz2

    然后把simsun.ttc也复制到~/font里去,执行下面的命令生成字体地图:

    cd ~/font  
    time fontforge -script subfonts.pe simsun.ttc song Unicode.sfd
    

    加time是为了计算时间,因为比较耗时,在我的Core 2 Duo T5500下,生成song花了40分钟,生成hei花了24分钟,仅供参考。

    字体生成好了,再建立一个描述文件吧。

    在~/font下,建立一个makemap文件,内容如下( 没有空格):

    for i in *.tfm  
    do  
    cat >> song.map << EOF   
    ${i%.tfm} ${i%.tfm} < ${i%.tfm}.pfb  
    EOF  
    done
    

    然后在终端下执行:chmod +x makemap让文件加上执行权限,最后执行:

    ./makemap

    再建立一个一个c70song.fd文件:

    % This is c70song.fd for CJK package.  
    % created by Edward G.J. Lee  
    % modify by Yue Wang  
    ProvidesFile{c70song.fd}  
    DeclareFontFamily{C70}{song}{hyphenchar fontm@ne}  
    DeclareFontShape{C70}{song}{m}{n}{<-> CJK * song}{}  
    DeclareFontShape{C70}{song}{bx}{n}{<-> CJKb * song}{CJKbold}  
    endinput
    

    好的,相关文件都已生成,开始复制字体使其生效。

    执行下面的命令,在你的主目录下生成隐藏的个人Tex配置,如果你哪天不需要了,也可以删除:

    mkdir -p ~/.texmf-var/fonts/map/dvips/CJK  
    mkdir -p ~/.texmf-var/fonts/tfm/CJK/song  
    mkdir -p ~/.texmf-var/fonts/type1/CJK/song  
    mkdir -p ~/.texmf-var/tex/latex/CJK/UTF8
    

    建立完这层层叠叠的目录以后,就把刚刚生成的字体复制进去吧。

    cp ~/font/song.map ~/.texmf-var/fonts/map/dvips/CJK  
    cp ~/font/*.tfm ~/.texmf-var/fonts/tfm/CJK/song  
    cp ~/font/*.pfb ~/.texmf-var/fonts/type1/CJK/song  
    cp ~/font/c70song.fd ~/.texmf-var/tex/latex/CJK/UTF8
    

    复制完后就执行命令刷新缓存,让它生效:

    sudo texhash  
    updmap --enable Map song.map
    

    假如一切顺序的话, 就测试一下我们安装的song体是否能用吧。

    在任意位置编辑这个文件,然后保存为test.tex,支持UTF-8格式:

    documentclass{article}  
    usepackage{CJKutf8}  
    egin{document}  
    egin{CJK}{UTF8}{song}  
    你好!这里是Ubuntu下的TexLive+CJK环境!  
    end{CJK}  
    end{document}
    

    执行分别生成pdf文档和用evince来查看文档:

    pdflatex test.tex  
    evince test.pdf
    
    换行命令
     
    \:换行。
    \[offset]:换行,并且与下一行的行间距为原来行间距+offset。
    ewline:与\相同。
    linebreak:强制换行,与 ewline的区别为linebreak的当前行分散对齐。
     
    分段命令
     
    par:分段。
     
    分页命令
     
    ewpage:分页命令。
    clearpage:和 ewpage 类似。我们在使用 CJK 环境时会加入 clearpage 在环境末尾。
     
    首行缩进
     
    最朴实的方法是设置 parindent 的长度:setlength{parindent}{长度},如果想要首行缩进两个汉字距离,则setlength{parindent}{2em}。
    如果在CJK环境当中,则可以在egin{CJK}{GBK}{song}后面紧跟 CJKindent 实现首行缩进。
    默认第一段不首行缩进,如果想让第一段首行缩进,则可以使用 usepackage{indentfirst}。
    如果想让某一段不首行缩进,则可以在该段前加上 oindent。
    如果想让整篇文章都首行不缩进,则:setlength{parindent}{0pt}
    注意:在 LaTeX 中,一个回车表示一个空格,两个回车表示一个分段。
     
    通常实践中,我们都是按照下面的模板进行扩充的:
     
    documentclass[12pt,a4paper]{article}
    usepackage{CJK}    %导入CJK宏包
    setlength{parskip}{10pt}  % 设置部分段落间隔
    egin{document}
    egin{CJK*}{GBK}{song}  %开始CJK环境
    CJKtilde   %重定义"~"
    CJKindent  %设置首段缩进
     
    This paper reflects on the history and development of the LaTeX Project Public License (LPPL) .par %此处为分段
     
    
    oindent(此处不首行缩进)In late June, the TUG 2010 conference was held in San Francisco to great success. 
     
    clearpage
    end{CJK*}       %结束CJK环境
    end{document}

     

    setlength{parskip}{10pt}:段落间隔是 lineskip 和 parskip 之和,这里设置 parskip 的值是为了增加段落的间隔。
     
    CJKindent:在 CJK 环境中首行缩进。
    每天一小步,人生一大步!Good luck~
  • 相关阅读:
    Oracle中有大量的sniped会话
    Error 1130: Host '127.0.0.1' is not allowed to connect to this MySQL server
    汉字转换为拼音以及缩写(javascript)
    高效率随机删除数据(不重复)
    vs2010 舒服背景 优雅字体 配置
    mvc中的ViewData用到webfrom中去
    jquery ajax return值 没有返回 的解决方法
    zShowBox (图片放大展示jquery版 兼容性好)
    动感效果的TAB选项卡 jquery 插件
    loading 加载提示······
  • 原文地址:https://www.cnblogs.com/jkmiao/p/4803707.html
Copyright © 2011-2022 走看看