LaTeX技巧842:四招为图表目录增加“图”“表”标签

最近帮助一些用户修改定制毕业论文模板时,发现通常毕业论文模板要求图表目录格式如下:图 X.X .................页码,LaTeX默认基础类或是CTeX宏集自带类的图表目录均不含“图”“表”标签,如果想实现这一样式该怎么做呢?

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

分享到:
未经允许不得转载:LaTeX技巧842:四招为图表目录增加“图”“表”标签
已有 条意见

    最新文章

    加载中...
      本站提供专业LaTeX排版、咨询、定制服务,请点击下图咨询详情


      全国首个精品的LaTeX视频教程,大牛带着你入门,让LaTeX学习不再纠结,请点击下图咨询详情

      热门评论

        联系我们

        交流QQ群:91940767
        本站QQ号:343083553
        邮箱联系latexstudio@qq.com
        淘宝店铺https://shop240512713.taobao.com/ 提供排版,模板定制,培训,图片处理,视频教程等LaTeX服务。

        关注我们微信公众号

        如果您投稿或者希望加入我们团队,请发送您的简历到latexstudio@qq.com。