1

I would like to use a smaller font size for thebibliography environment.

After reading the answers to the question What font size is used in the 'thebibliography' environment? I learned that the font size can be changed with the directive:

\renewcommand{\bibliofont}{<desired font size>}

Unfortunately, this does not seem to work with my document.

The only significant differences with respect to the other question is that I am using the article documentclass instead of amsart and that I am using Overleaf to compose my document.

What am I missing?


Minimal Working Example:

\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
  • 2
    \bibliofont is a command specific to amsart and not available in most other document classes. The simplest solution for you is probably to say {\tiny before \begin{thebibliography} and add } after \end{thebibliography}. – moewe May 10 '19 at 15:00
  • @moewe your approach works fine! Thank you :) – codeaviator May 10 '19 at 15:05
2

\bibliofont is not available in all document classes. It seems to be specific to amsart.

You could try

  {\tiny
   \begin{thebibliography}{1}
     \bibitem{bib1}
     \url{https://example.com/}

     \bibitem{bib2}
     \url{https://example.net/}
   \end{thebibliography}}

which is not too pretty code-wise, but should work in most cases (since many classes explicitly set the heading size so that it is unaffected by the \tiny).


Other than that you'd have to redefine or patch the definition of thebibliography to include \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

That would be prettier because it executes the size command in the right place, but it also requires knowledge of the original definition of thebibliography.

  • @barbarabeeton At least in the MWE the font size of the heading stays the same even with \tiny (I haven't checked, but I assume that the headings reset the size manually in this case). – moewe May 10 '19 at 22:41
  • Right you are. I should have checked the code before commenting. (The definition of \section, using \@startsection, does explicitly set the size locally.) I'll delete that comment (and this one too, after you've had a chance to read it). – barbara beeton May 11 '19 at 3:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.