LaTeX .sty文件缺失解决办法

重装了Ubuntu10.10后原来的texlive的环境没了需要进行重新配置,参考前文Tex UTF-8的环境配置,这次装的是full包,顺便装了texmaker。之后试着编译以前的毕业论文时候出现了问题。

1.'floatflt.sty' not found. floatflt.sty是支持文字环绕图片的一个包,论文是有用到这个的,但是新装的环境里貌似没有包含它。

解决办法:从CTAN的网站上下载floatflt,解压后有floatflt.ins和floatflt.dtx,在终端执行latex floatflt.ins会生成floatflt.sty,因为是图形支持的,所以直接拷贝到/usr/share/texmf-texlive/tex/latex/graphics/下,然后在终端sudo texhash刷新就好了。

2.解决完问题一后再编译出现了'pageno.sty' not found,这个应该是显示页数的吧,不是太清楚,猜想解决办法应该如上,但是没有在CTAN上找到相关的ins和dtx文件来生成sty,还好有找到直接有人share的pageno.sty文件,看这里。copy保存。这个的话就需要建立一个pageno的文件夹,然后放在该文件夹里,目录同/usr/share/texmf-texlive/tex/latex/,同样texhash刷新。

至于如何找到上述的目录把相应的sty拷贝进去,可以查看编译的时候打出的log,很多包的查找路径都有输出在log里面。

顺便推荐上述2里面共享sty文件的那个网址,是加拿大西蒙菲莎大学(SFU)Simon Fraser University的计算机系的某个共享,里面各种sty文件应该都是齐全的了。具体请点 这里

Posted by little lily Mon, 08 Nov 2010 22:52:32 +0800


Note

 只是先记录一下

伪代码显示,lstlisting包参数设置, captionpos=b,% 标题位置,b for bottom, and t for top

不喜欢让Latex自动安排图片位置,可以使用float包,然后
用\begin{figure}[H]。


\usepackage{float}

等我写完论文要把使用经验全记录下来!!!!

Posted by little lily Sat, 24 Apr 2010 06:52:01 +0800


[zz]使用BibTex管理引用文献

 

Tips:我用的是pdflatex+cjk所以不能处理中文的引用,于是在命名的时候只能用英文字符。如下文献数据库中的标注。

转自 看一粒沙中的世界

 

之所以使用 BibTeX 的理由很简单:

  • 不用在参考文献的格式上殚精竭虑
  • 你为某一篇论文所建立的参考文献,也可直接用于其它论文
  • 非常高效,使用简单

BibTeX 的使用可分为以下步骤:

  1. 创建参考文献数据库:不要害怕,这里的数据库实际上就是一个扩展名为 .bib 的文本文件,在其中记录文献信息;
  2. 在 LaTeX 文稿中指定参考文献位置与样式;
  3. 使用 LaTeX 与 BibTeX 编译文稿。

下面是一份参考文献数据库 “蜀国文献.bib”,不过里面只有 3 篇文献:

                                   |---->划线部分只能用英文字符,比如换成 zhugeliang-book

  1. @book{诸葛亮:Book,  
  2. author          ="诸葛亮",
  3. year            ="2006",
  4. title           ="木牛流马制造工艺指南 [M]",
  5. publisher       ="蜀国科技出版社"
  6. };
  7.  
  8. @article{诸葛亮:Article,
  9. author  ="诸葛亮",
  10. title   ="论六出祁山的必要性与可行性 [J]",
  11. jounal  ="蜀国军事期刊",
  12. volume ="13",
  13. number ="110"
  14. year    ="2007"
  15. };
  16.  
  17. @article{刘备:摔小孩,
  18. author  ="刘备",
  19. title   ="论怎样教育小孩子 [J]",
  20. jounal  ="蜀国生活期刊",
  21. volume ="18",
  22. number ="120"
  23. year    ="2007"
  24. };

参考文献数据库中,可以存储许多种文献类别,比如:article, book, booklet, conference, inbook, incollection, inproceedings, manual, misc, mastersthesis, phdthesis, proceedings, techreport, unpublished 等等。每种参考文献类别由多个域组成,有些是必须写得,没写会给出警告,而有些是可选。譬如 book 类别中,不可省略的域有 author, title, journal, year,可省略的域有 volume, number, pages, month, note。推荐做法是在参考文献数据库中尽可能提供文献的详细信息。

在 LaTeX 文稿中引用参考文献数据库中的文献条目很简单,对于上面的参考文献数据库示例,在 LaTeX 文稿 test.tex 中按下述方法引用:

\bibliographystyle 指令是用来指定参考文献排版样式的,LaTeX 已经预定了许多种参考文献排版样式,plain 是其中的一种。\bibliography 是用来引入参考文献数据库的,它会按照正文中所引用的参考文献,按次序排版于正文之后。这里要注意一个问题:即便你的参考文献数据库中有上千条文献,但正文中只引用了两篇,那么 \bibliographystyle 指令只会导入你所引用的文献,未引用的文献不会出现在论文中的。这种机制为我们提供了参考文献数据复用的功能。

正文中引用一篇参考文献,只需要指定参考文献数据库中相应参考文献条目的标识即可,譬如 \cite{诸葛亮:Book},通过标识 “诸葛亮:Book” 引用诸葛亮同学的专著《木牛流马制造工艺指南》。

对包含参考文献的 LaTeX 文稿采用如下方式编译:

  1. $ xelatex  test
  2. $ bibtex   test
  3. $ xelatex  test
  4. $ xelatex  test

至于为啥要重复使用 xelatex 对文稿进行编译,请看以下流程图:

 

 

本节示例最终排版效果,如下图所示。

点击查看原始尺寸

Posted by little lily Wed, 07 Apr 2010 17:58:04 +0800


Start with LaTex

 

感谢国家!

灰常感谢师兄提供的LaTex参考配置指南,昨晚开始配置,在等生成中文字体的时候好慢好慢,于是开着机去睡觉了。今天早上起来肯定是生成好了,还好不用联网的不会受限制。然后按照接下来的步骤,刷刷5分钟内就搞定了^_^

唔,自己之前找了那么多参考的安装配置都没有搞定,弱死了。

ok,现在搞定了排版的工具了,还有个那么好用的模板,程序也算是写完了,可以开始码字啦,加油加油,只有三个星期~~

Posted by little lily Sun, 28 Mar 2010 08:30:07 +0800


[zz]在Ubuntu下简易配置Tex UTF-8中文环境

 

写在前面:问到TigerSoldier师兄找到的相关参考Ubuntu下配置latex的中文环境,正在尝试,应该会ok的吧。之前自己配很多次都不成功>_<转载过来纯粹记录

转自画猫不成反类虎转自LDCN

在Ubuntu下配置使用Tex中文环境有好几种选择和相关方法,有些比较简单(比如直接用XeTeX),有些则相对麻烦一点(比如手动去生成相关字体)。

现在应用最广的一般是TexLive CJK,如果想尽量使你的Tex文档在Windows/Linux下互相通用,一般都选择这种组合,而且这也是目前最成熟的(相对于XeTeX)。

今天这篇文章中的方法,是利用目前已经成功的方法,再结合Ubuntu的特定环境所作的。希望能给想在Ubuntu下配置Tex中文环境的朋友一个参考。

—–

先介绍一下之前最流行的在Linux下配置Tex的方法,一般是参考这篇文章:

http://mailboxpublic.googlepages.com/texlive2007cjkchinesehowto

下载1GB左右的ISO档,挂载ISO并安装其中的TexLive,再自己生动生成相关字体文件。一般都能顺利的配置好Tex UTF-8的中文环境。

但是对于习惯了apt-get的用户,可能不愿意从外部安装Tex套件。因此,我参考了一些文章,琢磨出了这个利用Ubuntu源里的TexLive,再手动生成字体包的方法,优点是:

  • 不需要下载1GB的ISO档,只需要下载我准备的几百KB的字体生成要用的相关文件。
  • 只从Ubuntu源里安装相关Tex套件,不往系统目录写入其他文件,方便删除。
  • 仍需要手动生成字体文件,不过是安装在自己的主目录下。

好。请看详细方法:

一、安装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 texlive-bibtex-extra texlive-common latex-beamer

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

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等,这里以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 \font\m@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}
\begin{document}
\begin{CJK}{UTF8}{song}
你好!这里是Ubuntu下的TexLive CJK环境!
\end{CJK}
\end{document}

 

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

pdflatex test.tex
evince test.pdf

看看你的过程顺不顺利,生成的PDF档也是下面这样吗?

texlive.png

texlive-2.png

用同样的方法搞定hei和kai等常用中文标准字体,开始享受你的Tex吧!

参考资料是:

Fedora上配置Tex UTF-8 中文系统

TeXLive 2007 CJK Chinese Howto

ubuntu 7.10下搞定Latex CJK

Posted by little lily Sat, 27 Mar 2010 21:38:00 +0800