Estoy escribiendo una tesis. Las imágenes que tengo varían entre gráficos e imágenes normales. Quiero que aparezcan en la lista:
Table des figures
y Tables des graphiques
.
Sólo puedo hacer uno usando figure
, ¿cómo puedo generar el segundo?
Respuesta1
Usando el float
paquete y su \newfloat
comando es posible agregar nuevos entornos flotantes como graphique
, que define un nuevo contador con el mismo nombre.
Elegí la grp
extensión para el archivo relevante List of...
y el contador debería restablecerse dentro del capítulo, por ejemplo.
Es \listofgraphiques
un comando contenedor para \listof{graphique}{Some title}
.
Además, \crefname
se utilizan algunas declaraciones, por si son necesarias.
\documentclass{book}
\usepackage[demo]{graphicx}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage{float}
\usepackage{hyperref}
\usepackage{cleveref}
\newfloat{graphique}{tpbh}{grp}[chapter]
\newcommand{\listofgraphiquesname}{Table des graphiques}
\newcommand{\listofgraphiques}{%
\listof{graphique}{\listofgraphiquesname}%
}
\crefname{graphique}{graphique}{graphiques}
\Crefname{graphique}{Graphique}{Graphiques}
\begin{document}
\listoffigures
\listofgraphiques
\clearpage
See \cref{grp-lagraphique} or \Cref{grp-lagraphique} or \Cref{grp-lagraphique,grp-lagraphique-encore} for more information.
\chapter{Alors\dots}
\begin{figure}
\centering
\includegraphics[scale=0.5]{ente}
\caption{Foo figure} \label{fig-lafigure}
\end{figure}
\begin{graphique}
\centering
\includegraphics[scale=0.5]{ente}
\caption{C'est bon!} \label{grp-lagraphique}
\end{graphique}
\chapter{Encore}
\begin{figure}
\centering
\includegraphics[scale=0.5]{ente}
\caption{La figure encore} \label{fig-lafigure-encore}
\end{figure}
\begin{graphique}
\centering
\includegraphics[scale=0.5]{ente}
\caption{C'est bon encore!} \label{grp-lagraphique-encore}
\end{graphique}
\end{document}
Con Graphique
mayúsculas:
\documentclass{book}
\usepackage[demo]{graphicx}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage{float}
\usepackage{caption}
\usepackage{hyperref}
\usepackage{cleveref}
\newfloat{graphique}{tpbh}{grp}[chapter]
\newcommand{\listofgraphiquesname}{Table des graphiques}
\newcommand{\listofgraphiques}{%
\listof{graphique}{\listofgraphiquesname}%
}
\crefname{graphique}{graphique}{graphiques}
\Crefname{graphique}{Graphique}{Graphiques}
\DeclareCaptionLabelFormat{graph}{#1~#2}
\captionsetup[graphique]{name={Graphique},labelformat=graph}
\begin{document}
\listoffigures
\listofgraphiques
\clearpage
See \cref{grp-lagraphique} or \Cref{grp-lagraphique} or \Cref{grp-lagraphique,grp-lagraphique-encore} for more information.
\chapter{Alors\dots}
\begin{figure}
\centering
\includegraphics[scale=0.5]{ente}
\caption{Foo figure} \label{fig-lafigure}
\end{figure}
\begin{graphique}
\centering
\includegraphics[scale=0.5]{ente}
\caption{C'est bon!} \label{grp-lagraphique}
\end{graphique}
\chapter{Encore}
\begin{figure}
\centering
\includegraphics[scale=0.5]{ente}
\caption{La figure encore} \label{fig-lafigure-encore}
\end{figure}
\begin{graphique}
\centering
\includegraphics[scale=0.5]{ente}
\caption{C'est bon encore!} \label{grp-lagraphique-encore}
\end{graphique}
\end{document}
Respuesta2
En lugar de paquete float
(verla respuesta de cristian) puedes usar el paquetenewfloat
. es parte delcaption
manojoy tiene un comando muy fácil de entender \DeclareFloatingEnvironment
para declarar nuevos flotadores.
\documentclass{book}
\usepackage[demo]{graphicx}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage{newfloat}
\usepackage{caption}
\usepackage{hyperref}
\usepackage{cleveref}
\newcommand{\listofgraphiquesname}{List of Graphics}
\addto\captionsfrench{% Switch name by language
\def\listofgraphiquesname{Table des graphiques}%
}
\DeclareFloatingEnvironment[%
fileext=grp,
listname=\listofgraphiquesname,
name=Graphique,
placement=tpbh,
within=chapter,
chapterlistsgaps=on
]{graphique}
\crefname{graphique}{graphique}{graphiques}
\Crefname{graphique}{Graphique}{Graphiques}
\begin{document}
\listoffigures
\listofgraphiques
\clearpage
See \cref{grp-lagraphique} or \Cref{grp-lagraphique} or \Cref{grp-lagraphique,grp-lagraphique-encore} for more information.
\chapter{Alors\dots}
\begin{figure}
\centering
\includegraphics[scale=0.5]{ente}
\caption{Foo figure} \label{fig-lafigure}
\end{figure}
\begin{graphique}
\centering
\includegraphics[scale=0.5]{ente}
\caption{C'est bon!} \label{grp-lagraphique}
\end{graphique}
\chapter{Encore}
\begin{figure}
\centering
\includegraphics[scale=0.5]{ente}
\caption{La figure encore} \label{fig-lafigure-encore}
\end{figure}
\begin{graphique}
\centering
\includegraphics[scale=0.5]{ente}
\caption{C'est bon encore!} \label{grp-lagraphique-encore}
\end{graphique}
\end{document}
Si tiene un documento en un solo idioma, ni siquiera necesita definirlo \listofgraphiquesname
, simplemente puede usarlo listname={List of Graphics}
. Lo agregué para mostrar cómo se pueden hacer definiciones dependientes del idioma.
El paquete KOMA-Scriptproporciona un paquetetocbasic
que proporciona \DeclareNewTOC
. El comando es similar al newfloat
de \DeclareFloatEnvironment
pero proporciona funciones adicionales para configurar las entradas de la lista. Y el paquete carga el paquete KOMA-Script scrbase
, que proporciona una interfaz alternativa para hacer que los nombres dependan del idioma:
\documentclass{book}
\usepackage[demo]{graphicx}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage{tocbasic}
\usepackage{hyperref}
\usepackage{cleveref}
% Define language depending names using scrbase
\newcommand*{\listofgraphiquesname}{List of Graphics}
\newcaptionname{french}{\listofgraphiquesname}{Table des graphiques}
\newcommand*{\graphiquename}{Graphic}
\newcaptionname{french}{\graphiquename}{Graphique}
\DeclareNewTOC[%
type=graphique,
name=\graphiquename,
float,
floatpos=tpbh,
counterwithin=chapter,
listname=\listofgraphiquesname,
tocentrynumwidth=2.3em,% hanging indent of the entries to the list of …
tocentryindent=1.5em,% indent of entries to the list of …
]{gpo}
\crefname{graphique}{graphique}{graphiques}
\Crefname{graphique}{Graphique}{Graphiques}
\begin{document}
\listoffigures
\listofgraphiques
\clearpage
See \cref{grp-lagraphique} or \Cref{grp-lagraphique} or \Cref{grp-lagraphique,grp-lagraphique-encore} for more information.
\chapter{Alors\dots}
\begin{figure}
\centering
\includegraphics[scale=0.5]{ente}
\caption{Foo figure} \label{fig-lafigure}
\end{figure}
\begin{graphique}
\centering
\includegraphics[scale=0.5]{ente}
\caption{C'est bon!} \label{grp-lagraphique}
\end{graphique}
\chapter{Encore}
\begin{figure}
\centering
\includegraphics[scale=0.5]{ente}
\caption{La figure encore} \label{fig-lafigure-encore}
\end{figure}
\begin{graphique}
\centering
\includegraphics[scale=0.5]{ente}
\caption{C'est bon encore!} \label{grp-lagraphique-encore}
\end{graphique}
\end{document}
Como puede ver, este paquete no necesita usar una clase KOMA-Script, sino que también funciona con varias otras clases como la book
clase estándar.