Мне всегда нравилась маленькая ширина текста, навязанная в ClassicThesis, но это проблема, когда у нас много изображений/графиков. Я хотел бы иметь два графика рядом, чтобы сэкономить место (это не очень важные графики, и я не хочу «тратить» на них целую страницу). Однако, даже используя их, \pgfplotsset{small}
они не помещаются. Я мог бы сделать их еще меньше, но они стали бы нечитаемыми.
Какое лучшее решение для решения этой проблемы? Увеличить ширину текста классического тезиса? Использовать makebox
для того, чтобы игнорировать поля? Отказаться? Я хотел бы получить наилучший возможный результат типографически.
решение1
Для моих подобных случаев я определяю новую среду с именемширокийдля чего я использую макрос adjustwith
из пакета changewidth
:
\usepackage{calc}
\usepackage[strict]{changepage}
\newsavebox\widebox
\newenvironment{wide}%
{\@parboxrestore%
\begin{adjustwidth*}{}{-\marginparwidth-\marginparsep}%
\begin{lrbox}{\widebox}%
\begin{minipage}{\textwidth+\marginparsep+\marginparwidth}%
}{\end{minipage}\end{lrbox}
\usebox\widebox}%
\end{adjustwidth*}
}
Пакет calc
используется при расчете ширины потока среды и величины расширенияширокийза пределами ширины текста. С {adjustwidth*}
расширением всегда идет к внешней границе страницы. Пример его использования:
\begin{figure}[htb] % or table
\begin{wide}
\includegraphics[width=\hsize]{example-image}
\caption{Ma wide figure}
\label{fig:wide}
\end{wide}
\end{figure}
решение2
@Zarko уже опубликовал хороший ответ для создания wide
среды для укладки фигур внутри. В зависимости от точной разметки страницы документа, для двустороннего я предпочитаю в некоторых случаях использовать внутреннее поле в качестве жесткого упора:
Это можно сделать, определив новую \raggedout
команду, которая вызывается \flushleft
на оборотной и \flushright
лицевой страницах:
% Symmetric ragged commands
\newcommand\IfOddPage{%
\checkoddpage
\ifoddpage\expandafter\@firstoftwo
\else\expandafter\@secondoftwo\fi}
\newcommand\raggedout{\IfOddPage\raggedright\raggedleft}
\newcommand\raggedin{\IfOddPage\raggedleft\raggedright}
Затем это используется в определении wide
следующим образом:
\newenvironment{wide}{%
\begin{adjustwidth*}{0pt}{-\marginparsep-\marginparwidth}
\raggedout
}{%
\end{adjustwidth*}%
}
Наконец, в некоторых случаях вам может понадобиться эластичное пространство между фигурами, и использование \hfil
здесь установит равное расстояние между внешним полем и внешней фигурой, как и между самими двумя фигурами. Источник изображения выше:
\begin{figure}
\begin{wide}
\begin{subfigure}
\psfragfig{PhD/Experiments/Gauss/fig/gauss-vertical}
\caption{Axial displacement down the centreline.\figlabel{gauss-vertical}}
\end{subfigure}%
\hfil % <= pay attention!
\begin{subfigure}
\psfragfig{PhD/Experiments/Gauss/fig/gauss-radial}
\caption{Radial displacement with a \SI{5}{mm} offset.\figlabel{gauss-radial}}
\end{subfigure}
\end{wide}
\caption[
Magnetic flux density measurements of a cylindrical permanent magnet.
]{
Magnetic flux density measurements of an \maggrade{35} neodymium \diameter\SI{100x30}{mm} cylindrical permanent magnet.
The origin of the measurements is \SI{5}{mm} from the face of the magnet.
}
\figlabel{gauss-meas}
\end{figure}