
내 문서의 일부 페이지에서 위쪽 여백을 제거하기 위해 geometry
및 패키지를 사용하고 있습니다 .fancyhdr
\fancypagestyle{special}{
\newgeometry{top=0mm}
}
이는 이 스타일을 사용하는 모든 페이지에서 위쪽 여백을 제거하는 데 효과적이지만, 위쪽 여백을 제거하면 전체 페이지가 위쪽으로 오프셋되는 것처럼 보이는 아래쪽 여백도 더 크게 변경됩니다. 아래쪽 여백을 다시 정상으로 복원하려면 어떻게 해야 합니까?
업데이트:다음은 문제를 보여주는 몇 가지 컴파일 가능한 코드입니다.
\documentclass[openany]{book}
\usepackage{graphicx}
\usepackage{geometry}
\usepackage{fancyhdr}
\usepackage{bophook}
\usepackage{afterpage}
\usepackage{lipsum}
\fancypagestyle{special}{
\newgeometry{top=0mm}
}
\fancypagestyle{plain}{
\restoregeometry
\fancyhead{}
\renewcommand{\headrulewidth}{0pt}
}
\begin{document}
\pagestyle{plain}
\thispagestyle{special}
\centerline{\includegraphics[width=\paperwidth, trim={0 37mm 0 37mm},clip]{Downloads/full.jpg}}
\section*{Test}
\lipsum[1-10]
\end{document}
첫 페이지 하단의 보기 흉한 간격을 확인하세요.
답변1
newgeometry
, 나 : 를 사용할 필요는 없습니다 \fancypagestyle
. 그냥 load eso-pic
및 \AddToShipoutPicture*
다음 명령을 사용하면 됩니다.
\documentclass[openany]{book}
\usepackage{graphicx}
\usepackage[export]{adjustbox}
\usepackage[showframe]{geometry}
\usepackage{fancyhdr}
\usepackage{bophook}
\usepackage{afterpage}
\usepackage{lipsum}
\usepackage{eso-pic}
\begin{document}
\pagestyle{plain}
\AddToShipoutPictureBG*{\AtPageUpperLeft{%
\makebox[\paperwidth]{\includegraphics[scale = 1.05,valign=t]{SanRomano-all}}}}
\section*{Test}
\lipsum[1-20]
\end{document}
답변2
이렇게는 할 수 없습니다. 페이지 헤더가 추가되었습니다.~ 후에페이지는 이미 현재 텍스트 높이로 조판되어 있습니다. 따라서 를 통해 페이지를 이동할 수는 있지만 \newgeometry
페이지가 다시 조판되지는 않습니다.
따라서 \newgeometry
페이지 스타일 외부에서 사용해야 합니다. 예:
\newpage
\newgeometry{...}
...
\newpage
\restoregeometry