
(Прочитайте перед тем, как ответить:) Я сделаю это.нетзамените вторую картинку другим примером изображения, цель этого поста — показать проблему, с которой я столкнулся при попытке использовать реальное изображение.
У меня есть следующий код, в котором фигура опущена в соответствии с моим параметром верхнего поля моих геометрических размеров, что решило проблему, о которой я спрашивал неделю назад (изображение выходило за границу поля), но как сделать так, чтобы что-то подобное было автоматизировано и выполнялось без указания того, что я хочу, чтобы моя фигура была опущена на 0,02 см?
% {
\documentclass[letterpaper, 12pt]{article}
\usepackage{graphicx}
\usepackage{newfloat}
\usepackage[showframe, left=1.5cm, right=1.5cm, top=1.5cm, bottom=1.5cm]{geometry}
\usepackage{indentfirst}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{} % clear all header and footers
\cfoot{\thepage} % put the page number in the center footer
\renewcommand{\headrulewidth}{0pt} % remove the header rule
\addtolength{\footskip}{-.5cm} % shift the footer down which will shift the page number up
\usepackage[backend=biber]{biblatex}
\usepackage{subcaption}
\usepackage{adjustbox}
\usepackage{microtype}
\usepackage{csquotes}
\usepackage{lipsum}
\usepackage{unicode-math}
\setmainfont{Times New Roman}[Ligatures=TeX]
\setmathfont{STIX Two Math}
\usepackage[main=english,spanish]{babel}
\makeatletter
\renewcommand{\@maketitle}{%
\newpage
\null
\vspace{-0.125cm} % This corresponds to the top margin set by geometry
\begin{center}
\parskip=0pt
\let\footnote\thanks
{\LARGE \@title \par }%
\vspace{0cm} % Adjust this value to control the space between the title and author
{\large \lineskip .5em%
\begin{tabular}[t]{c}%
\@author
\end{tabular}%
\par }%
\vspace{.25cm} % Adjust this value to control the space between the author and date
{\large \@date }%
\end{center}\par
\vspace{.25cm} % Adjust this value to control the space between the date and content after maketitle
}
\makeatother % ask if you want to change the spacing of the 3 top sections
\renewcommand{\arraystretch}{1.5} % this makes tables look better
\setlength\parindent{.5cm}
% }
\title{Title Random}
\author{David Patterson}
\date{\today}
\begin{document}
\noindent
\begin{minipage}{\textwidth}
\maketitle
\end{minipage}
\begin{center}
\begin{large}
\textsc{\RN{1}. Introduction}
\end{large}
\end{center}
\lipsum[1]
\begin{figure}[htb]
\centering
\includegraphics[width=.5\textwidth]{example-image}
\caption*{Fig. 2: A random image.}
\label{example}
\end{figure}
\begin{center}
\begin{large}
\textsc{\RN{2}. Second Part}
\end{large}
\end{center}
\lipsum[2]
\newpage
\begin{figure}[htb]
\centering
\begin{adjustbox}{margin=.02cm}
\includegraphics[width=.4\textwidth]{04_figure.jpg}
\end{adjustbox}
\caption*{Fig. 2: A statistic showing the population of the Texas Horned Lizard, with it having a low distribution percentage in the Pineywoods area.}
\label{Texas Horned Lizard}
\end{figure}
\end{document}
по сравнению со следующим
% {
\documentclass[letterpaper, 12pt]{article}
\usepackage{graphicx}
\usepackage{newfloat}
\usepackage[showframe, left=1.5cm, right=1.5cm, top=1.5cm, bottom=1.5cm]{geometry}
\usepackage{indentfirst}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{} % clear all header and footers
\cfoot{\thepage} % put the page number in the center footer
\renewcommand{\headrulewidth}{0pt} % remove the header rule
\addtolength{\footskip}{-.5cm} % shift the footer down which will shift the page number up
\usepackage[backend=biber]{biblatex}
\usepackage{subcaption}
\usepackage{adjustbox}
\usepackage{microtype}
\usepackage{csquotes}
\usepackage{lipsum}
\usepackage{unicode-math}
\setmainfont{Times New Roman}[Ligatures=TeX]
\setmathfont{STIX Two Math}
\usepackage[main=english,spanish]{babel}
\makeatletter
\renewcommand{\@maketitle}{%
\newpage
\null
\vspace{-0.125cm} % This corresponds to the top margin set by geometry
\begin{center}
\parskip=0pt
\let\footnote\thanks
{\LARGE \@title \par }%
\vspace{0cm} % Adjust this value to control the space between the title and author
{\large \lineskip .5em%
\begin{tabular}[t]{c}%
\@author
\end{tabular}%
\par }%
\vspace{.25cm} % Adjust this value to control the space between the author and date
{\large \@date }%
\end{center}\par
\vspace{.25cm} % Adjust this value to control the space between the date and content after maketitle
}
\makeatother % ask if you want to change the spacing of the 3 top sections
\renewcommand{\arraystretch}{1.5} % this makes tables look better
\setlength\parindent{.5cm}
% }
\title{Title Random}
\author{David Patterson}
\date{\today}
\begin{document}
\noindent
\begin{minipage}{\textwidth}
\maketitle
\end{minipage}
\begin{center}
\begin{large}
\textsc{\RN{1}. Introduction}
\end{large}
\end{center}
\lipsum[1]
\begin{figure}[htb]
\centering
\includegraphics[width=.5\textwidth]{example-image}
\caption*{Fig. 2: A random image.}
\label{example}
\end{figure}
\begin{center}
\begin{large}
\textsc{\RN{2}. Second Part}
\end{large}
\end{center}
\lipsum[2]
\newpage
\begin{figure}[htb]
\centering
\includegraphics[width=.4\textwidth]{04_figure.jpg}
\caption*{Fig. 2: A statistic showing the population of the Texas Horned Lizard, with it having a low distribution percentage in the Pineywoods area.}
\label{Texas Horned Lizard}
\end{figure}
\end{document}
и что привело к
Есть ли настройка, adjustbox
которая могла бы автоматически делать то, что мне нужно? Изображение, которое находится в моем примере, это
решение1
После значительного сокращения вашего примера до:
\documentclass{article}
\usepackage{graphicx,xcolor}
\usepackage[showframe, left=1.5cm, right=1.5cm, top=1.5cm, bottom=1.5cm]{geometry}
\begin{document}
\begin{figure}[htb]
\centering
\includegraphics[page=1,width=.4\textwidth]{example-image-a4-numbered}
\caption{Test}
\end{figure}
\end{document}
Я обнаружил, что geometry
эта опция, showframe
похоже, рисует верхнюю линию рамки текстовой области.внутритекстовая область. Вы также можете использовать это:
\documentclass{article}
\usepackage{xcolor}
\usepackage[showframe, left=1.5cm, right=1.5cm, top=1.5cm, bottom=1.5cm]{geometry}
\begin{document}
\noindent{\textcolor{red}{\raisebox{-\dp\strutbox}{\rule{.5\textwidth}{\textheight}}}}
\end{document}
Вот скриншот верхнего левого угла с увеличением 5000%:
Вместо этого используем package showframe
(и перемещаем фрейм на задний план):
\documentclass{article}
\usepackage{xcolor}
\usepackage[left=1.5cm, right=1.5cm, top=1.5cm, bottom=1.5cm]{geometry}
\usepackage[noframe]{showframe}
\AddToShipoutPictureBG{\ShowFramePicture}
\begin{document}
\noindent{\textcolor{red}{\raisebox{-\dp\strutbox}{\rule{.5\textwidth}{\textheight}}}}
\end{document}
показывает правильный результат:
Возвращаясь к вашей проблеме: с вашим примером, но пакетом showframe
для визуализации областей, я получаю:
Так что, ИМХО, тут нет никакой проблемы, а есть подход немецкой поговорки: «Wer viel misst, misst Mist». (По-английски: «Если вы много мерите, вы меряете дерьмо»). Другими словами, изображение правильно размещено вверху текстовой области, поэтому оно соблюдает настройки geometry
, даже если отображаемая рамка geometry
предполагает обратное.
Кстати: Ваш пример можно было бы сократить, ничего не потеряв:
\documentclass{article}
\usepackage{graphicx,xcolor}
\usepackage[showframe, left=1.5cm, right=1.5cm, top=1.5cm, bottom=1.5cm]{geometry}
\begin{document}
\begin{figure}[htb]
\centering
\includegraphics[width=.4\textwidth]{04_figure.jpg}
\caption{Test}
\end{figure}
и даже:
\documentclass{article}
\usepackage{graphicx,xcolor}
\usepackage[showframe, left=1.5cm, right=1.5cm, top=1.5cm, bottom=1.5cm]{geometry}
\begin{document}
\begin{figure}[htb]
\centering
\includegraphics[page=1,width=.4\textwidth]{example-image-a4-numbered}
\caption{Test}
\end{figure}
\end{document}