Latex编译过程中遇到的奇奇怪怪的问题及解决方案
标签(空格分隔): 杂七杂八的问题
有必要写一个博文记录自己在Latex编译时遇到的各种问题,希望可以帮到遇到同样错误的亲故。讲真,一直没有系统的学习Latex,都是投哪个会直接拿那个会的模板来套,然后每次需要调整自己的表格格式以及图片规格的时候总是很头疼,也会遇到跟多问题。Solution到用时方恨少,没办法,再做一回实用主义吧。。 并不打算系统的学习了。。(因为以后估计也用不上了。。略伤感)听说Latex做Slides还是一把好手,改天可以尝试一下。
软件选择
英文:写英文论文的Latex软件一抓一大把,这里只列举我用过的3款:windows下的WinEdt和texstudio。两款都很好用,如果只写英文论文的话可以直接用texstudio,很小巧一般也不会出现什么问题(就是界面吃藕)。Mac下的TEXShop家族,包含了BibDesk, LaTexiT等组件,也很够用。
中文:如果写中文论文,什么都不用说,要想错误出现的最少,直接用Windows+WinEdt Windows+WinEdt Windows+WinEdt吧!话说在Mac上整了好几次我到现在都没弄好怎么编译中文论文。。
编译命令:Latex + dvipdf
写在这个时候,模板用的是我校的学术模板,网上一搜一大把。之前编译都是直接使用pdfLatex
,直接生成PDf,然而学校模板中包含大量的宏包及eps矢量图,都是更加兼容Latex+dvipdf
.
Tips: 其实选择哪种编译命令跟你要插入的图片格式最相关。如果你用eps格式的图片就用Latex编译,如果插入的图片是jpg, png, pdf格式,直接用pdfLatex.
\documentclass[dvipdfm, oneside, master]{thesis}
下面是几种常见命令的解释:(引擎就相当于编译器,如C++的gcc)
- pdflatex 命令 = PDFTeX 引擎 + LaTeX 格式 + PDF 输出
- pdftex 命令 = PDFTeX 引擎 + plain 格式 + PDF 输出
- latex 命令 = PDFTeX 引擎 + LaTeX 格式 + DVI 输出(因为是DVI输出,所以要用
dvipdf
将其转化为PDF格式)
图片错误:Latex error: Cannot determine size of graphic (no BoundingBox)
再次声明:因为本篇博客的编译是latex + dvipdf
,所以下面的所有错误都是在此编译命令下发生的.!
如果想在latex + dvipdf
命令下插入.jpg
格式的图片怎么办。很好,就会遇到小标题中的错误。因为dvi输出不支持读取jpg、png格式图片的大小,需要使用natwidth 和 natheight
显示的声明你插入的图片的大小,如下:【参考】
\documentclass{article}
\usepackage{graphicx}
\begin{document}
\begin{figure}
\centering
\includegraphics[width=0.8\textwidth,natwidth=610,natheight=642]{tiger.pdf}
\end{figure}
\end{document}
图片错误:Latex error: .bb file not found
插入jpg, png, pdf格式图片时路径问题也要注意,如果tiger.jpg
与你的tex文件放在同一个目录下,那么应该这样写:
\includegraphics[width=0.8\textwidth,natwidth=610,natheight=642]{{./tiger.jpg}}
在Bibtex中使用网址作为参考文献
需要使用包:\usepackage{yrl}
然后在BibTeX中新建:
@Misc{UCSDLab,
Title = {Anomaly Detection and Localization in Crowded Scenes},
Author = {Nuno Vasconcelos},
HowPublished = {\url{http://www.svcl.ucsd.edu/projects/anomaly/}}
}
编译后显示如下:
[*] Nuno Vasconcelos, . Anomaly detection and localization in crowded scenes. http://www.
svcl.ucsd.edu/projects/anomaly/.
图片/表格序号不对
在定义图表的时候用\label{fig:XXXX} or \label{table:XXXX}
,在正文中引用时用:\ref{fig:XXXX} or \ref{table:XXXX}
,但是有时候编译完后的序号很奇怪。。会加上上级序号。。
正确的写法应该是:\lable{}
命令要紧跟在\caption{}
之后!!
原因是:原则上\label
位置很灵活,但是建议直接紧跟所要指代的对象。特别的,如果一个标签在浮动环境中被声明的话,只有当它紧跟在\caption{}
之后,\ref{XXXX}
才会返回对应的图片或者表格的编号。否则,即声明写在浮动环境外,\ref{XXXX}
会直接返回所在section的编号。
摘要首段空两格
在\begin{abstract}
后先加入一行空行,然后在开始摘要的书写。这样编译之后,段首就有空两格了…
之后每段都要这样咯~