我需要区分插图和图形。这是必要的,因为这是我国的规范。
因此我创建了一个运行良好的“\DeclareNewTOC”:
\DeclareNewTOC[
type=graficosabnt,
types=graficosabnts,
float,
floattype=3,
name=Graphics,
listname={List of graphics}
]{lol}
我能够使用 \listofgraficosabnts 列出此图形。但我需要将图形和图片放在同一个列表中。我能够使用 \captionlistentry[figure]{#1} 来做到这一点,但它不能满足我的需要。它为图形提供了新的编号。
使用以下代码:
\documentclass[12pt,fleqn,a4paper,oneside]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage{caption}
\usepackage{hyperref}
\usepackage{graphicx}
\usepackage{float} %figuras
\DeclareNewTOC[%
type=graficosabnt,%
types=graficosabnts,% used in the \listof.. command
float,% define a floating environment
floattype=3,% see below
name=Gr\'{a}fico,%
listname={Lista de Gr\'{a}ficos}%
]{lol}
\renewcommand\thegraficosabnt{\arabic{chapter}.\arabic{graficosabnt}}
\begin{document}
\listoffigures
\begin{figure}[H]
\centering
\caption{test\_figure}
\centering
\includegraphics[width= 0.2 \linewidth]{dummy}
\label{a}
\end{figure}
\begin{graficosabnt}[H]
\captionlistentry[figure]{test\_graph2}
\centering
\caption{test\_graph2}
\centering
\includegraphics[width= 0.2 \linewidth]{dummy}
\label{b}
\end{graficosabnt}
\end{document} % Fim.
我希望:
图片列表
图 0.1 - 测试图 . . . . . . . . . . . . . . . . . . . . . . . . 1
图形 0.1 - test_graph2。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 1
答案1
使用最新的 KOMA-Script 版本:
\documentclass[12pt,fleqn,a4paper,oneside]{scrreprt}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
%\usepackage{caption}
%\usepackage{float}
\usepackage{hyperref}% should be the last package
\KOMAoptions{captions=above}
\newcommand\entrynumberwithprefix[2]{%
\csname listof#1entryname\endcsname\ #2~-~%
}
\DeclareTOCStyleEntry[
entrynumberformat=\entrynumberwithprefix{lof},
indent=0pt,
dynnumwidth,
numsep=0pt
]{default}{figure}
\DeclareNewTOC[%
type=graficosabnt,%
%types=graficosabnts,% not needed in this example
float,% define a floating environment
floattype=3,
name=Gr\'{a}fico,%
%listname={Lista de Gr\'{a}ficos}% not needed in this example
tocentryindent=0pt,
tocentrydynnumwidth,
tocentrynumsep=0pt,
tocentryentrynumberformat=\entrynumberwithprefix{lol}
]{lol}
\counterwithin{graficosabnt}{chapter}
\makeatletter
\renewcommand*{\ext@graficosabnt}{lof}
\makeatother
\begin{document}
\listoffigures
\begin{figure}[!hb]
\centering
\caption{test\_figure}\label{a1}
\includegraphics[width= 0.2 \linewidth]{example-image}
\end{figure}
\begin{figure}[!hb]
\centering
\caption{test\_figure}\label{a2}
\includegraphics[width= 0.2 \linewidth]{example-image}
\end{figure}
\begin{graficosabnt}[!hb]
\centering
\caption{test\_graph2}\label{b}
\includegraphics[width= 0.2 \linewidth]{example-image}
\end{graficosabnt}
\end{document}
运行三次即可获得
评论:
\KOMAoptions{captions=above}
如果您将所有标题放在源代码中的图形、表格等上方,则使用此选项可确保标题和内容之间的额外空间插入到标题下方(而不是上方)。但请注意,此选项不会移动标题本身,因此它必须位于源代码中的正确位置。KOMA-Script 类还提供\captionabove
和\captionbelow
。有关更多信息,请参阅文档。- 如果添加前缀(例如-> ),
\DeclareTOCStyleEntry
则还可以使用所有选项\DeclareNewTOC
tocentry
dynnumwidth
tocentrydynnumwidth
\ext@graficosabnt
存储监听器应该去往的位置。如果将其重新定义为lof
graficosabnt 的条目,则将出现在 LoF 中。