我想在thebibliography
环境中使用较小的字体大小。
阅读完问题的答案后“thebibliography”环境中使用什么字体大小?我了解到可以使用以下命令更改字体大小:
\renewcommand{\bibliofont}{<desired font size>}
不幸的是,这似乎不适用于我的文档。
与其他问题相比,唯一显着的区别是,我使用的是 documentclassarticle
而不是,amsart
并且我正在使用背页撰写我的文档。
我错过了什么?
最小工作示例:
\documentclass[12pt,english]{article}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[a4paper, hmargin=2cm, bmargin=3cm, tmargin=4cm, centering]{geometry}
\usepackage[colorlinks,allcolors=blue]{hyperref}
\usepackage{cleveref}
\newcommand{\bibliofont}{\tiny} % <-- THIS DOES NOT WORK!
\begin{document}
This is an example, more information here~\cite{bib1} and here~\cite{bib2}.\\
\begin{thebibliography}{1}
\bibitem{bib1}
\url{https://example.com/}
\bibitem{bib2}
\url{https://example.net/}
\end{thebibliography}
\end{document}\grid
答案1
\bibliofont
并非所有文档类别都可用。它似乎特定于amsart
。
你可以尝试
{\tiny
\begin{thebibliography}{1}
\bibitem{bib1}
\url{https://example.com/}
\bibitem{bib2}
\url{https://example.net/}
\end{thebibliography}}
从代码角度来看这不是太漂亮,但在大多数情况下应该可以工作(因为许多类明确设置了标题大小,因此它不受的影响\tiny
)。
除此之外,您必须重新定义或修补的定义以thebibliography
包含\bibliofont
。
\newcommand{\bibliofont}{\tiny}
\makeatletter
\renewenvironment{thebibliography}[1]
{\section*{\refname}%
\@mkboth{\MakeUppercase\refname}{\MakeUppercase\refname}%
\bibliofont
\list{\@biblabel{\@arabic\c@enumiv}}%
{\settowidth\labelwidth{\@biblabel{#1}}%
\leftmargin\labelwidth
\advance\leftmargin\labelsep
\@openbib@code
\usecounter{enumiv}%
\let\p@enumiv\@empty
\renewcommand\theenumiv{\@arabic\c@enumiv}}%
\sloppy
\clubpenalty4000
\@clubpenalty \clubpenalty
\widowpenalty4000%
\sfcode`\.\@m}
{\def\@noitemerr
{\@latex@warning{Empty `thebibliography' environment}}%
\endlist}
\makeatother
这会更漂亮,因为它在正确的位置执行 size 命令,但它也需要了解的原始定义thebibliography
。