
В разделе списка литературы моей статьи есть только одна ссылка, занимающая/создающая одну лишнюю страницу, а это то, чего я не хочу.
Какое можно было бы решить, чтобы изменить это, не влияя на маржу?
мои ссылки создаются как обычно командами,
\newpage
\section*{References}
\bibliographystyle{chicago}
\bibliography{references}
и подошли к самому концу моей статьи.
Большое спасибо
решение1
Я могу предоставить то, что вы просите, но я не поддерживаю выбранный вами подход, поскольку он делает одну страницу немного другого размера шрифта, чем все остальные. Но вот это, ОСНОВАННОЕ НА МОЕМ ОТВЕТЕ НАРазмещение текста в определенном пространстве в Latex
Во-первых, этот MWE устанавливает все требуемые процедуры в преамбуле, но для первого запуска я комментирую соответствующий вызов в документе. Это нужно и для того, чтобы увидеть, с чем нам придется работать, и для создания файла .bbl, поскольку мой метод будет несчастлив без его существования.
\documentclass[12pt]{article}
\bibliographystyle{unsrt}
\usepackage{scalerel}
\usepackage{fp}
\usepackage{lipsum}
\usepackage{stackengine}
\newcount\boxheight
\newcount\boxwidth
\newlength\constrainedwidth
\newsavebox\testbox
\newlength\currentwidth
\newcommand\aspect[1]{%
\boxheight=\ht#1\relax%
\boxwidth=\wd#1\relax%
\FPdiv\testaspect{\the\boxheight}{\the\boxwidth}%
%\testaspect\\% COMMENT THIS LINE TO REMOVE ASPECT-RATIO PRINTS
}
% TARGET-HEIGHT, TARGET-WIDTH, CONTENT, GUESS>NATURAL-WIDTH, dWIDTH
\newcommand\constraintext[5]{%
\def\svfboxsep{\the\fboxsep}%
\setlength\fboxsep{0pt}%
\setlength\constrainedwidth{#2}%
\sbox\testbox{\rule{#2}{#1}}%
%TARGET ASPECT RATIO\\% COMMENT THIS LINE TO REMOVE COMMENT
%V\\% COMMENT THIS LINE TO REMOVE COMMENT
\aspect{\testbox}%
\edef\aspectratio{\testaspect}%
\constrainsize{#1}{\aspectratio}{#3}{#4}{#5}%
\setlength\fboxsep{\svfboxsep}%
}
\newcommand\constrainsize[5]{%
\sbox{\testbox}{\fbox{\parbox[b]{#4}{#3}}}%
\aspect{\testbox}%
\FPiflt{\testaspect}{#2}%
\setlength{\currentwidth}{#4}%
\addtolength{\currentwidth}{-#5}%
\constrainsize{#1}{#2}{#3}{\currentwidth}{#5}%
\else
\setlength\constrainedwidth{#1}%
\FPdiv\result{1.0}{#2}%
% CHANGE \makebox TO \framebox TO add FRAME
\boxtype[\result\constrainedwidth]{\hfill%
\scaleto{\parbox[b]{\currentwidth}{#3}}{#1}%
\hfill%
}%
\fi%
}
\begin{document}
\let\boxtype\framebox% CHANGE TO \let\boxtype\makebox WHEN HAPPY
\large
Citing \cite{goossens93, goossens93a, knuth79, knuth79a, lamport94,
lamport94a, goossens93b, knuth79b, lamport94b}\clearpage
%\noindent\constraintext{.97\textheight}{\textwidth}{\vspace{-\baselineskip}%
\bibliography{refs}%
%}{1.6\textwidth}{1mm}
\end{document}
Я позаимствовал несколько записей о нагрудных номерах изМножественные библиографиии сделал дублирующие варианты для своих целей, так что мой файл bib ( refs.bib
) выглядит следующим образом:
@book{goossens93,
author = "Michel Goossens and Frank Mittlebach and Alexander Samarin",
title = "The Latex Companion A",
year = "1993",
publisher = "Addison-Wesley",
address = "Reading, Massachusetts"
}
@book{goossens93a,
author = "Michel Goossens and Frank Mittlebach and Alexander Samarin",
title = "The Latex Companion A",
year = "1993",
publisher = "Addison-Wesley",
address = "Reading, Massachusetts"
}
@book{goossens93b,
author = "Michel Goossens and Frank Mittlebach and Alexander Samarin",
title = "The Latex Companion A",
year = "1993",
publisher = "Addison-Wesley",
address = "Reading, Massachusetts"
}
@book{knuth79,
author = "Donald E. Knuth",
title = "Tex and Metafont, New Directions in Typesetting",
year = {1979{(}1950{)}},
publisher = "American Mathematical Society and Digital Press",
address = "Stanford"
}
@book{knuth79a,
author = "Donald E. Knuth",
title = "Tex and Metafont, New Directions in Typesetting",
year = {1979{(}1950{)}},
publisher = "American Mathematical Society and Digital Press",
address = "Stanford"
}
@book{knuth79b,
author = "Donald E. Knuth",
title = "Tex and Metafont, New Directions in Typesetting",
year = {1979{(}1950{)}},
publisher = "American Mathematical Society and Digital Press",
address = "Stanford"
}
@book{lamport94,
author = "Leslie Lamport",
title = "Latex: A Document Preparation System",
year = "1994",
edition = "Second",
publisher = "Addison-Wesley",
address = "Reading, Massachusetts"
}
@book{lamport94a,
author = "Leslie Lamport",
title = "Latex: A Document Preparation System",
year = "1994",
edition = "Second",
publisher = "Addison-Wesley",
address = "Reading, Massachusetts"
}
@book{lamport94b,
author = "Leslie Lamport",
title = "Latex: A Document Preparation System",
year = "1994",
edition = "Second",
publisher = "Addison-Wesley",
address = "Reading, Massachusetts"
}
В результате список литературы оказывается на 2-й странице:
Итак, если я раскомментирую эти две строки в конце документа, чтобы включить \constraintext
,
\begin{document}
\let\boxtype\framebox% CHANGE TO \let\boxtype\makebox WHEN HAPPY
\large
Citing \cite{goossens93, goossens93a, knuth79, knuth79a, lamport94,
lamport94a, goossens93b, knuth79b, lamport94b}\clearpage
\noindent\constraintext{.97\textheight}{\textwidth}{\vspace{-\baselineskip}%
\bibliography{refs}%
}{1.6\textwidth}{1mm}
\end{document}
Я получаю этот результат. Обратите внимание, что я оставил \boxtype
as \framebox
, чтобы видеть границы поля 0,97 \textheight
x \textwidth
. Когда я буду доволен результатом, я могу просто изменить первую строку документа на \let\boxtype\makebox
. Также \vspace
вызов перед библиографией нужен, потому что \bibliography
вставляет пустую строку в верхнюю часть поля, чему мне пришлось противодействовать, чтобы сохранить верхнее поле.
Так почему я выбрал 97% от \textheight
? Потому что метод может закончиться слишком узким полем в попытке удовлетворить ограничения как по ширине, так и по высоте. Например, выбор 0.99\textheight
даст следующий неприемлемый результат.
Итак, возвращаясь к значению 0,97 \textheight
и меняя \framebox
на a, \makebox
получаем окончательный результат: