我想在 LaTeX 中输入一个方程式。但是它太长了,一行都放不下。它涉及很多列的大数组,所以我无法拆分它。我想减小字体大小,以便一行也能显示。但是,\small
在环境中不起作用equation
。
答案1
以下说明了数学模式下字体大小的变化:
\documentclass[letterpaper]{article}
\usepackage{graphicx} % Necessary to use \scalebox
\usepackage{amsmath,amssymb}
\begin{document}
\noindent
normal: $ x^2 + 2xy + y^2 $\\
displaystyle: $ {\displaystyle x^2 + 2xy + y^2} $\\
scriptstyle: $ {\scriptstyle x^2 + 2xy + y^2} $\\
scriptscriptstyle: $ {\scriptscriptstyle x^2 + 2xy + y^2} $\\
textstyle: $ {\textstyle x^2 + 2xy + y^2} $
\noindent
\scalebox{0.5}{%
normal: $ x^2 + 2xy + y^2$}
\end{document}
得出:
注意:
\displaystyle
给出命令将显示公式的数学字体大小切换为正常大小。\textstyle
用于将内联公式的字体恢复为正常大小。\scriptstyle
用于将数学字体设置为下标和上标符号的大小。\scriptscriptstyle
为双下标和上标符号提供正常大小。
使用包\scalebox
中的命令时graphicx
,可以指定宽度(或高度),另一个尺寸将按比例缩放。以类似的方式,您可以指定两个尺寸,但在这种情况下,这完全是为了美观。因此,我们在命令下有以下内容\scalebox
:
\scalebox{h-dimension}{v-dimension}{content to be scaled}
:两个维度均有说明。\scalebox{h-dimension}{content}
:两个参数(h-dim
和v-dim
)都根据所述维度进行缩放。
答案2
只需放\small
前如果您想要缩小字体,可以在方程式\normalsize
后面添加一个,但使用 ams 多行方程式环境通常比更改字体大小更好。
实际上,只执行影响数学的大小更改命令的一部分而不更改基线以避免@barabara-beeton 提到的问题会更容易。这是段落文本\tiny
中的 (5pt) 等式\large
,用于突出显示差异,并显示上方和下方的显示跳过没有改变。
\documentclass{article}
\showoutput
\showboxdepth3
\begin{document}
\large
hghghga hghghga hghghga hghghga hghghga hghghga hghghga
hghghga hghghga hghghga hghghga hghghga hghghga hghghga
$$abc+xyz=44$$
bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb
bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb
hghghga hghghga hghghga hghghga hghghga hghghga hghghga
hghghga hghghga hghghga hghghga hghghga hghghga hghghga
\begingroup\makeatletter\def\f@size{5}\check@mathfonts
$$abc+xyz=44$$\endgroup
bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb
bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb
\end{document}
使用 AMSalign
会产生:
\documentclass{article}
\usepackage{amsmath}
\showoutput
\showboxdepth3
\begin{document}
\large
hghghga hghghga hghghga hghghga hghghga hghghga hghghga
hghghga hghghga hghghga hghghga hghghga hghghga hghghga
\begin{align}
abc&+xyz&&=44\\
x&-y&&=2\\
a&+b&&=77
\end{align}
bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb
bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb
hghghga hghghga hghghga hghghga hghghga hghghga hghghga
hghghga hghghga hghghga hghghga hghghga hghghga hghghga
\begingroup\makeatletter\def\f@size{5}\check@mathfonts
\def\maketag@@@#1{\hbox{\m@th\large\normalfont#1}}%
\begin{align}
abc&+xyz&&=44\\
x&-y&&=2\\
a&+b&&=77
\end{align}\endgroup
bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb
bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb bbbbbb
\end{document}
答案3
如同如何让数学字体变大,您可以使用\scalebox
缩小方程或\resizebox
将框缩小到特定宽度以减小尺寸。第一个是正常显示模式方程,然后是使用 和 的缩放\scalebox
版本\resizebox
:
代码:
\documentclass{article}
\usepackage{amsmath}
\usepackage{graphicx}
\newcommand*{\Scale}[2][4]{\scalebox{#1}{$#2$}}%
\newcommand*{\Resize}[2]{\resizebox{#1}{!}{$#2$}}%
\begin{document}
\[y = \sin^2 x\]
%
\[\Scale[0.5]{y = \sin^2 x}\]
%
\[ \Resize{1cm}{y = \sin^2 x}\]
\end{document}
答案4
为什么没有人提到small
环境?
\begin{small}
\[ x^2 + 2xy + y^2 \]
\end{small}