我有一些图形希望以横向显示,并带有旋转的标题。
sidewaysfigure
我可以使用包中的环境来实现这一点rotating
。
我还想确保 PDF 文档能够自动以适合阅读器的方向显示。我可以使用包landscape
中的环境来实现这一点pdflscape
。
但是我似乎无法将这两者结合起来以获得我想要的效果。如果我尝试将封装sidewaysfigure
在landscape
环境中,我的图形会旋转 180 度(但是页面确实以正确的方向显示在屏幕上)。
\afterpage{\begin{landscape}
\begin{sidewaysfigure}
\centering
\includegraphics{image}
\caption{caption}
\label{fig:label}
\end{sidewaysfigure}
\end{landscape}}
不起作用-图形显示不正确。
\begin{sidewaysfigure}
\centering
\includegraphics{image}
\caption{caption}
\label{fig:label}
\end{sidewaysfigure}
图形显示正确,但 PDF 文档无法识别该页面是横向的,因此在屏幕上查看时会自动以纵向显示。
答案1
不要在横向中使用 sidewaysfigure - 它会将你的图形旋转两次。常规图形就足够了:
\documentclass{article}
\usepackage{pdflscape}
\begin{document}
\begin{landscape}
\begin{figure}
\centering
\includegraphics{image}
\caption{caption}
\label{fig:label}
\end{figure}
\end{landscape}
\end{document}
答案2
尽管这个问题似乎在一年前就被回答了(由@Bettina 回答),但我认为问题和答案的复杂性具有误导性。建议的解决方案中存在两个潜在问题:
- 如果横向页面被放置在其他浮动元素中,则其表现会不太好
- 如果横向页面有其他页眉/页脚,则表现不佳
我会链接一些有用的帖子:
我认为下面的示例说明了如何将所有内容组合在一起。它满足了我的目的,文档周围的其他浮动元素似乎流动正常。现在它使用flafter
强制浮动元素在文本中声明后出现的包。
\documentclass{article}
\usepackage{pdflscape}
\usepackage{afterpage}
\usepackage{flafter}
\usepackage{fancyhdr}
\fancypagestyle{lscape}{%
\fancyhf{} % clear all header and footer fields
\fancyfoot[LE]{}
\fancyfoot[LO] {}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}}
\begin{document}
\afterpage{
\clearpage% To flush out all floats, might not be what you want
\begin{landscape}
\thispagestyle{lscape}
\pagestyle{lscape}
\begin{figure}
\includegraphics{myfigure.pdf}
\caption{Test}
\end{figure}
\end{landscape}
}
\end{document}
答案3
我遇到过类似的问题并找到了解决办法。
原始文件序言:
\documentclass[12pt]{amsart}
\usepackage{rotating}
使固定:
\RequirePackage{rotating}
\documentclass[12pt]{amsart}
%\usepackage{rotating}
因此插入\RequirePackage{rotating}
BEFORE\documentclass
并删除\usepackage{rotating}