我是 pdfLaTeX 的新手,所以我可能遗漏了一些非常明显的东西,我研究过一些解决方案,但都没有用。
我有一张图,这是一张相当大的图像,需要保留标题并适合页面。图像适合横向 A4 页面,但无论我到目前为止尝试了什么,LaTeX 都会从页面中心渲染图像,因此图会溢出纸张边缘。
我认为这与我使用 1 个横向页面而其余页面都是纵向有关,所以可能是边距配置的问题。
这是包含问题的相应片段(忽略标题):
\documentclass[10pt,a4paper]{article}
\usepackage[margin=1.2in]{geometry}
\usepackage{graphicx}
\usepackage{pdflscape}
\begin{document}
\begin{landscape}
\begin{figure}[ht]
\centering
\label{fig:singleton}
\includegraphics[scale=0.8]{class-diagram}
\caption{Proposed high level implementation of the Singleton pattern}
\end{figure}
\end{landscape}
\end{document}
我已将图像缩放到 0.8,以便更清晰地显示图形的渲染位置。
这是当前输出:
这是期望的结果:
希望能够清楚问题所在。
答案1
这是一个解决方案。我使用measuredfigure
环境,从threeparttable
,使标题相对于图形保持居中:
\documentclass[10pt,a4paper]{article}
\usepackage{ebgaramond}
\usepackage[margin=1.2in]{geometry}
\usepackage{graphicx}
\usepackage{pdflscape}
\usepackage{caption}
\captionsetup{labelfont = sc, textfont = it}
\usepackage{threeparttable}
\begin{document}
\begin{landscape}
\mbox{}\vfill
\begin{figure}[ht]
\label{fig:singleton}
\begin{measuredfigure}
\includegraphics[scale = 0.5]{Piero_di_Cosimo_2}
\caption{ And now for something completely different! }
\end{measuredfigure}
\end{figure}
\vfill\mbox{}
\end{landscape}
\end{document}
答案2
这里实际上不需要任何特殊的东西:
\documentclass{article}
\usepackage[margin=1.2in]{geometry}
\usepackage{graphicx,pdflscape,lipsum,caption}
\begin{document}
\lipsum[1-5]
\begin{landscape}
\centering
\includegraphics[scale=1.3]{example-image}
\captionof{figure}{Some caption associated with the picture}
\label{fig:singleton}
\end{landscape}
\lipsum[1-5]
\end{document}
由于landscape
环境形成了一个组,因此您可以使用它\captionof{figure}{...}
来放置传统的图形标题没有环境的使用figure
。避免使用环境的原因figure
是因为您不希望内容浮动(走开)。
此外,始终将\label
后\caption
;参见为什么环境的标签必须出现在标题之后?