Why not scale elements that contain text
For good fonts, different font sizes don't only have a different size, but the actual shape of the letters is different.
Consider the following example:
\documentclass{article}
\usepackage{adjustbox}
\begin{document}
\resizebox{3cm}{!}{\tiny Q}
\resizebox{3cm}{!}{\Huge Q}
\end{document}
As one can see the shape of the letters is different. For the tiny font, the strokes are thicker compared to the large font. This ensures that small symbols are still readable.
If one merely scales a font, the size of the letters from the current font size is changed, but the shape of the letters is not changed.
For the best possible result, it is thus better to choose an appropriate font size instead of scaling elements that contain text.
Scaling an element which contains text will result in an inconsistent font size compared to the rest of the document.
Especially automatic scaling to fit a table to the text width (\resizebox{\textwidth}{!}{...}
) will ensure that each and every table with have another font size which will look messy.
Only for fonts which have different optical sizes of the font, e.g. Latin Modern for 5pt and 17 pt. Without such own font files you'll get the same. For example the Libertinus:
\documentclass{article}
\usepackage{graphicx}
\usepackage[T1]{fontenc}
\begin{document}
\resizebox{3cm}{!}{\tiny Q}
\resizebox{3cm}{!}{\Huge Q}
\fontfamily{LibertinusSerif-LF}\selectfont
\resizebox{3cm}{!}{\tiny Q}
\resizebox{3cm}{!}{\Huge Q}
\end{document}
The embedded fonts are:
bash-3.2$ pdffonts document.pdf
name type encoding emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
DJAQCM+LMRoman5-Regular Type 1C WinAnsi yes yes yes 4 0
OQYFCQ+LMRoman17-Regular Type 1C WinAnsi yes yes yes 5 0
AJPGYT+LibertinusSerif Type 1C WinAnsi yes yes yes 6 0
OWXLSH+LMRoman10-Regular Type 1C WinAnsi yes yes yes 7 0