add-label-to-listoffigure-table本文提供了四种方法来实现,首先第一个方法我们都会想到的就是定制目录,那么我们使用titletoc宏包来定制一个。代码实现如下:

\usepackage{titletoc}
\titlecontents{figure}[0.5cm]{\songti\zihao{-4}}{\figurename~\thecontentslabel\quad}{\hspace*{-1.5cm}}{\titlerule*[0.12cm]{.}\contentspage}[\addvspace{6pt}]

方法二,定制目录的宏包还有一个就是tocloft宏包,方法如下:

\usepackage[titles]{tocloft}
\newlength{\mylen}
\renewcommand{\cftfigpresnum}{\figurename\enspace}
\settowidth{\mylen}{\cftfigpresnum\cftfigaftersnum}
\addtolength{\cftfignumwidth}{\mylen}

方法三,前面的方法都是在目录生成的时候,我们把标签放在目录的每一个项目上,如果大家打开toc文件就发现

\contentsline {figure}{\numberline {1.1}{\ignorespaces 图片示例一}}{4}

在程序写入lof的时候就没有把figurename写进去,只要我们让程序写进去那么显示也就没有什么问题,那么我们可以用下面的方法让他写进去,如下方法来做简单一点:

{%
\let\oldnumberline\numberline%
\renewcommand{\numberline}{\figurename~\oldnumberline}%
\listoffigures%
}

方法四,这一方法是延续上面的方法,只是更加深入一些,在基础宏上让其写入到lof文件中去,如果看不懂,可以采用前面的方法。

\usepackage{etoolbox}
\makeatletter
\patchcmd{\@caption}{\csname the#1\endcsname}{\csname fnum@#1\endcsname}{}{}
\renewcommand*\l@figure{\@dottedtocline{1}{1.5em}{3.5em}} % default for 3rd arg: 2.3em
\let\l@table\l@figure % as in article.cls
\makeatother

上述示例是以图为例的,表格的例子同样适用,大家可以自行测试学习下。

下载区

本站下载:示例代码下载选自:http://tex.stackexchange.com/questions/244484/align-caption-of-figure-in-list-of-figurehttp://tex.stackexchange.com/questions/183060/add-figurename-to-listoffigures-package-titletochttp://tex.stackexchange.com/questions/12865/list-of-figures-how-to-add-caption-label

点赞(0)

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部