正如解释的那样这个答案, 为锻炼,图像可以放在center
环境中(不是在浮动中figure
)。这在练习主体中效果很好。
但是在 里面\Question
,图像标题没有居中:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{caption}
\usepackage{exercise}
\begin{document}
\begin{Exercise}[title=MWE, label=ex:mwe]
In the main exercise text, the caption is correctly centered on the image.
\begin{center}
\captionsetup{type=figure}
\includegraphics[width=0.8\textwidth]{example-image} % example-image visible with mwe installed
\caption{Caption text, properly centered.}
\end{center}
\Question{
Why inside a ``Question'', the caption is not centered on the image ?
\begin{center}
\captionsetup{type=figure} % placed here for hyperref
\includegraphics[width=0.8\textwidth]{example-image}
\caption{Caption text, shifted.}
\end{center}
}
\end{Exercise}
\end{document}
这标题文档很清楚:对于单行,标题应该始终居中。
exercise
没有在“支持的软件包”部分列出,但这似乎很正常,因为它exercise
没有明确处理标题。
caption
这是或中的问题吗exercise
?还是我应该学习的东西?
发生了什么?
如何正确修复?
欢迎提出建议。
答案1
Center 是一个列表,将与其他列表(如练习)嵌套。换句话说,center 不是相对于页面居中,而是相对于 \Question。\caption 忽略列表。
所以问题是,您是否真的希望标题相对于图像居中,或者图像相对于页面居中?
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{caption}
\usepackage{exercise}
\usepackage{showframe}
\makeatletter
\newcommand\fullwidth{\hskip-\@totalleftmargin \linewidth=\textwidth}
\makeatother
\begin{document}
\begin{Exercise}[title=MWE, label=ex:mwe]
\Question{
Here we center the caption relative to the image.
\begin{center}
\captionsetup{type=figure, position=below} % placed here for hyperref
\includegraphics[width=0.8\textwidth]{example-image}
\parbox{\linewidth}{\caption{Caption text.}}
\rule{\linewidth}{1pt}
\end{center}
}
\Question{
Here we center the image relative to the page.
\begin{center}
\captionsetup{type=figure, position=below} % placed here for hyperref
\fullwidth\includegraphics[width=0.8\textwidth]{example-image}
\caption{Caption text.}
\rule{\linewidth}{1pt}
\end{center}
}
\end{Exercise}
\end{document}
答案2
您的图片完全居中,但您的第一句话中的 \parindent 和问题中较小的文本宽度在视觉上误导了您。我扩展了相应的文本。如果您编译它们,您应该会得到附加的结果:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{caption}
\usepackage{exercise}
\begin{document}
\begin{Exercise}[title=MWE, label=ex:mwe]
In the main exercise text, the caption is correctly centered on the image. This as well is a longer line.
\begin{center}
\captionsetup{type=figure}
\includegraphics[width=0.8\textwidth]{example-image} % example-image visible with mwe installed
\caption{Caption text, properly centered.}
\end{center}
\Question{
Why inside a ``Question'', the caption is not centered on the image? Why is this a shorter line?
\begin{center}
\captionsetup{type=figure} % placed here for hyperref
\includegraphics[width=0.8\textwidth]{example-image}
\caption{Caption text, shifted.}
\end{center}
}
\end{Exercise}
\end{document}