2007年7月28日星期六

在Ubuntu 7.04下安装texlive 2007

1、当然是先下载texlive2007
 
2、安装
$unzip texlive2007-live-20070212.iso.zip
$sudo mount -o loop texlive2007-live-20070212.iso /mnt
$cd /mnt
$sudo ./install-tl
接着按'I'默认全部安装。
 
3、修改环境变量
$ cd /usr/local/texlive/
$ sudo ln -s 2007 currnet
$ sudo vim /etc/environment
在PATH下加入'/usr/local/texlive/current/bin/i386-linux'
重新启动一个shell后,测试
测试文件:
\documentclass{article}
\usepackage{CJKutf8}
\begin{document}
Hello, world!
\end{document}
现在,可以用latex , dvips , dvipdfm , dvipdfmx , pdflatex , xelatex等测试,如果测试成功,英文应该是没有问题了
 
同时,现在已经可以用来测试一下xelatex使用系统自带字体,而不用生成tfm,type1等字体来处理中文的能力。
\documentclass[12pt,a4paper]{article}
\usepackage{hyperref}%不能有unicode选项,否则bookmark会是乱码

\usepackage{fontspec}
\usepackage{xunicode}
\usepackage{xltxtra}

\setromanfont{AR PL KaitiM GB}%字体可以选用任何系统已有的字体,用fc-list查看
%中文断行
\XeTeXlinebreaklocale "zh"
\XeTeXlinebreakskip = 0pt plus 1pt
\newfontinstance\lisufont{LiSu} %定义字体 LiSu
\newcommand{\lisu}[1]{{\lisufont #1}}

\hypersetup{pdfauthor={作者  李白 author},
              pdftitle={将进酒}}     %注意,在document之外的导言区

\begin{document}
  \tableofcontents

  \section{高堂明镜悲白发}
  君不见,高堂明镜悲白发,朝如青丝暮成雪。

   \section{高堂明镜悲白发}
  \lisu{君不见,高堂明镜悲白发,朝如青丝暮成雪。}
\end{document}
 
用xelatex直接编译为pdf文件
解释一下,fontspec这个包提供了XeteX能使用系统自带字体的功能,具体用法可以参考fontspec手册:/usr/share/doc/texlive-XeTeX/xelatex/fontspec/fontspec.pdf,xunicode 这个包在这里可以去掉因为没有用到一些复杂的字符,不过fontspec的手册强烈建议使用所以就放在里面了,xltxtra这个包提供了LaTeX没有的宏包,比如\XeTeX。 (可以参考 这里)
如果你的系统里面没有安装其他字体但是还是想用的话,XeTeX提供了一种使用外部字体的方法,这是一件很令人兴奋的事情。看一下如何做到的。fontspec包提供了一个ExternalLocation的选项允许你使用外部的字体:
\fontspec[ExternalLocation=/media/hda5/windows/Fonts/]{simli.ttf}
修改一下上面的例子

\documentclass[12pt,a4paper]{article}
\usepackage{fontspec}
\usepackage{xunicode}
\usepackage{xltxtra}
\newcommand\lishu{\fontspec[ExternalLocation=/media/hda5/windows/Fonts/]{simli.ttf}}
\newcommand\hei{\fontspec[ExternalLocation=/media/hda5/windows/Fonts/]{simhei.ttf}}
\newcommand\fang{\fontspec[ExternalLocation=/media/hda5/windows/Fonts/]{ simfang.ttf}}
\newcommand\kai{\fontspec[ExternalLocation=/media/hda5/windows/Fonts/]{simkai.ttf}}
\setromanfont{AR PL ZenKai Uni}
\begin{document}
\XeTeX 可以使用系统自带的字体,而不需要再另外生成。

\lishu \XeTeX 可以使用系统自带的字体,而不需要再另外生成。

\hei \XeTeX 可以使用系统自带的字体,而不需要再另外生成。

\fang \XeTeX 可以使用系统自带的字体,而不需要再另外生成。

\kai \XeTeX 可以使用系统自带的字体,而不需要再另外生成。

\end{document}

这里,给出了一个办法在xetex中方便地使用中文。一个好的示例文件 中文beamer示例
 
4、安装中文字体
$ sudo apt-get install fontforge
$ cd
$ mkdir font
$ cd font
$ ln -s /usr/share/fonts/truetype/microsoft/simhei.ttf simhei.ttf
$ cp /usr/local/texlive/current/texmf-dist/source/latex/CJK/utils/subfonts/* .
$ cp /usr/local/texlive/current/texmf/fonts/sfd/* .
生成字体
$ time fontforge -script subfonts.pe simhei.ttf hei Unicode.sfd
在这里,用fontforge 2005会比最新版本要快得多。在目录下就会生成一系列的pfb,tfm,afm,enc文件。下面把它们重新组织一下。

创建文件makemap, 内容如下:
for i in *.tfm
do
cat >> hei.map << EOF
${i%.tfm} ${i%.tfm} < ${i%.tfm}.pfb
EOF
done

执行makemap,生成song.map
$chmod +x makemap
$./makemap
创建文件 c70hei.fd 放CJK包,内容如下:
\ProvidesFile{c70hei.fd}
\DeclareFontFamily{C70}{hei}{\hyphenchar \font\m@ne}
\DeclareFontShape{C70}{hei}{m}{n}{<-> CJK * hei}{}
\DeclareFontShape{C70}{hei}{bx}{n}{<-> CJKb * hei}{\CJKbold}
\endinput
下面,把这些文件放入正确的地方。这里,我把它们放入系统的目录 /usr/local/texlive/curent/texmf-var/
$ sudo mkdir -p /usr/local/texlive/current/texmf-var/fonts/map/dvips/microsoft
$ sudo mkdir -p /usr/local/texlive/current/texmf-var/tex/latex/CJK/UTF8
$ sudo mkdir -p /usr/local/texlive/current/texmf-var/fonts/tfm/microsoft/hei
$ sudo mkdir -p /usr/local/texlive/current/texmf-var/fonts/type1/microsoft/hei
拷贝字体
$ sudo cp hei.map /usr/local/texlive/current/texmf-var/fonts/map/dvips/microsoft/
$ sudo cp *.tfm /usr/local/texlive/current/texmf-var/fonts/tfm/microsoft/hei/
$ sudo cp *.pfb /usr/local/texlive/current/texmf-var/fonts/type1/microsoft/hei/
$ sudo cp c70hei.fd /usr/local/texlive/current/texmf-var/tex/latex/CJK/UTF8/
$ sudo mktexlsr
$ sudo updmap --enable Map song.map
 
测试文件:
\documentclass{article}
\usepackage{CJKutf8}
\begin{document}
\begin{CJK}{UTF8}{hei}
你好!
\end{CJK}
\end{document}
5、在pdf中直接使用ttf字体
原理与我原来写的是一样的,只是配置文件的位置不一样了
 
$ sudo apt-get install cmap-adobe-*
$ sudo ln -s /usr/share/fonts/cmap/ /usr/local/texlive/current/texmf-var/fonts/cmap
$ sudo vim /usr/local/texlive/current//texmf/fonts/map/dvipdfm/dvipdfmx/cid- x.map
加入
%Microsoft Hei ti
hei@Unicode@    unicode    :0:simhei.ttf
初步完成,其实第4,5步,完全可以参考我前面写的()来配置,是一样的。只是注意一下配置文件的位置变了。
 
--
一步一步教你从互联网赚钱 http://www.zqzn.com/index.asp?rid=key480769
投资理财 http://li-cai.blogspot.com/

1 条评论:

匿名 说...

Having read this I believed it was rather informative.
I appreciate you spending some time and energy to put this content together.
I once again find myself personally spending way too much time both reading and posting
comments. But so what, it was still worthwhile!

Also visit my web page :: led distributors