
나는 다음을 넣고 싶다:
- 페이지 바깥쪽에 있는 일부 텍스트,
- 페이지 안쪽에 또 다른 텍스트가 있습니다.
이를 위해 패키지 에서 제공하는 ( \checkoddpage
) 테스트를 활용합니다 . 다음 MWE에서 지적한 것처럼 코드가 삽입된 현재 페이지에 충분한 공간이 남아 있지 않은 것으로 밝혀지는 경우를 제외하고는 꽤 잘 작동합니다(처음 두 개는 괜찮지만 마지막 두 개가 아님).\ifoddpage
changepage
\documentclass{book}
\usepackage[inner=10mm,outer=30mm]{geometry}
\usepackage[strict]{changepage}
\newcommand{\onouterside}{%
\begin{minipage}[t]{0.3\linewidth}
Some text supposed to be on the outer side.
\end{minipage}
}
\newcommand{\oninnerside}{%
\begin{minipage}[t]{0.75\linewidth}
Some text supposed to be on the inner side.
\end{minipage}
}
\newcommand{\test}{%
\checkoddpage%
\ifoddpage%
\oninnerside
\hspace*{11mm}%
\onouterside
\else%
\hspace*{-20mm}%
\onouterside
\hspace*{11mm}%
\oninnerside
\fi%
}
\begin{document}
\test
\newpage
\test
\newpage
\rule{0.4pt}{.969\textheight}\par
\test
\newpage
\mbox{}
\newpage
\rule{0.4pt}{.969\textheight}\par
\test
\end{document}
홀수/짝수 페이지 테스트를 강력하게 만들려면 어떻게 해야 합니까? 텍스트의 세로 공간을 구해서 현재 페이지에 남아 있는 세로 공간과 비교해야 할까요? 그렇다면 후자를 어떻게 알 수 있을까요?
답변1
메인 수직 목록에서 어떤 작업을 하든 조심하세요:-)
이것은 더 안전한 수평 모드에서 테스트를 수행합니다.
\documentclass{book}
\usepackage[inner=10mm,outer=30mm]{geometry}
\usepackage[strict]{changepage}
\newcommand{\onouterside}{%
\begin{minipage}[t]{0.3\linewidth}
Some text supposed to be on the outer side.
\end{minipage}
}
\newcommand{\oninnerside}{%
\begin{minipage}[t]{0.75\linewidth}
Some text supposed to be on the inner side.
\end{minipage}
}
\newcommand{\test}{%
\mbox{}\checkoddpage%
\ifoddpage%
\oninnerside
\hspace*{11mm}%
\onouterside
\else%
\hspace*{-20mm}%
\onouterside
\hspace*{11mm}%
\oninnerside
\fi%
}
\begin{document}
\test
\newpage
\test
\newpage
\rule{0.4pt}{.969\textheight}\par
\test
\newpage
\mbox{}
\newpage
\rule{0.4pt}{.969\textheight}\par
\test
\end{document}