Проблема пустой страницы при начале новой главы с изображением на первой странице

Проблема пустой страницы при начале новой главы с изображением на первой странице

Это сложный вопрос. У меня много случаев, когда я начинаю новую главу, и первая страница новой главы — это страница pdf, которая загружается с помощью \includegraphics (у меня много документов, я сканирую, а затем загружаю в Latex вот так).

Если я не настраиваю ширину страницы pdf/изображения правильно, то в начале главы у меня оказывается пустая страница. Поэтому я трачу много времени, вручную настраивая ширину изображения, чтобы сделать его достаточно маленьким и избавиться от пустой страницы перед главой.

Более того, если я изменю размер с Letter на Legal, все эти изменения не понадобятся.

Я хотел бы спросить, существует ли автоматизированный способ определения ширины страницы PDF или изображения для загрузки, чтобы не создавалась пустая страница.

Дело всегда на первой странице новой главы. Вот MWE того, что я имею в виду.

\documentclass[11pt]{report}%   
\usepackage[demo]{graphicx}
\usepackage[letterpaper]{geometry}
%\usepackage[legalpaper]{geometry}
\begin{document}
Some text here
Some text here

Some text here
Some text here

\chapter{one}
\includegraphics[width=0.9\textwidth,height=.9\textwidth]{whatever}

\includegraphics[width=0.9\textwidth,height=.9\textwidth]{whatever}
\end{document}

Вот результат. Вторая страница пустая.

Графика Mathematica

Изменение height=.9на height=.85исправляет это

....
\chapter{one}
\includegraphics[width=0.9\textwidth,height=.85\textwidth]{whatever}

\includegraphics[width=0.9\textwidth,height=.9\textwidth]{whatever}
 ....

Вот результат

Графика Mathematica

Я понимаю проблему. И почему Latex так сделал. Изображение было немного великовато, поэтому он попробовал его на новой странице и сдался, закончив пустой испорченной страницей.

Примечание: в MWE выше я добавил height=только для того, чтобы показать проблему. В моем реальном коде width=используется только is. Но я не знал, как показать проблему здесь без использования height=.

Итак, мой вопрос: есть ли способ заставить Latex автоматически корректировать ширину загружаемого изображения, чтобы не создавалась пустая страница? Или более умный способ сделать это, без всех этих ручных настроек.

Что я делаю сейчас, так это запускаю Latex, трачу кучу времени на настройку значений ширины изображений, чтобы убрать пустые страницы перед ними. Иногда я также меняю geometryи мне приходится делать это снова. Было бы неплохо автоматизировать это.

Использую TL 2015.

решение1

Макрос \getremainingвычисляет вертикальное пространство, оставшееся на странице, помещая ответ в длину \vremaining.

Не забудьте запустить его дважды.

\documentclass[11pt]{report}%   
\usepackage[demo]{graphicx}
\usepackage[letterpaper]{geometry}
%\usepackage[legalpaper]{geometry}
\usepackage{tikzpagenodes}

\newlength{\vremaining}

\newcommand{\getremaining}%
{\begin{tikzpicture}[remember picture,overlay]
  \pgfextracty{\vremaining}{\pgfpointanchor{current page text area}{south}}%
  \global\vremaining=-\vremaining
\end{tikzpicture}%
\advance\vremaining by 0.6\baselineskip
\vspace*{-\baselineskip}\newline}% place above image

\begin{document}
Some text here
Some text here

Some text here
Some text here

\chapter{one}
\getremaining
\includegraphics[width=0.9\textwidth,height=\vremaining]{whatever}

\includegraphics[width=0.9\textwidth,height=.9\textwidth]{whatever}
\end{document}

Связанный контент