答案1
在这里,我介绍
\bsmile[<under-depth-offset>]{<main-text>}{<underset-text>}
如果#2
为空白,则排版的宽度源自\smile
...否则源自的宽度#2
。
数学家协会
\documentclass{article}
\usepackage{stackengine}
\newcommand\bsmile[3][0pt]{\if\relax#2\relax\def\tmp{F}\else\def\tmp{T}\fi
\ensurestackMath{\stackengine{#1}{#2}{%
\stackengine{1pt}{\mbox{\huge$\smile$}}{\scriptstyle#3}{U}{c}{F}{T}{S}}
{U}{c}{F}{\tmp}{S}}}
\begin{document}
$90\bsmile{}{+90}\bsmile[16pt]{180}{+90}\bsmile{}{+180}360\bsmile{}{+240}600$
\end{document}
答案2
语法不太复杂:
\documentclass{article}
\usepackage{amsmath,array}
\newcommand{\differences}[1]{%
\begingroup
\def\?##1{\hidewidth\scriptstyle\mathstrut##1\hidewidth\kern0pt}%
\def\U{\mbox{\huge$\smile$}}%
\settowidth{\dimen255}{\U}
\renewcommand{\arraystretch}{0}%
\setlength{\arraycolsep}{0pt}%
\begin{array}{*{20}{w{c}{\dimen255}}}
#1
\end{array}%
\endgroup
}
\begin{document}
\[
\differences{
90 && 180 && 360 && 600 \\
& \U && \U && \U \\
& \?{+90} && \?{+180} && \?{+240} \\
&& \U && \U \\
&& \?{+90} && \?{+60} \\
&&& \U \\
&&& \?{+30}
}
\]
\[
\differences{
640 && 231 && 100 && 91 && 1003 \\
& \U && \U && \U && \U \\
& \?{-409} && \?{-131} && \?{-9} && \?{+912} \\
&& \U && \U && \U \\
&& \?{+278} && \?{+122} && \?{921} \\
&&& \U && \U \\
&&& \?{-156} && \?{+799} \\
&&&& \U \\
&&&& \?{955}
}
\]
\end{document}
主号码不得超过四位数字。
答案3
这是一个简单的数组。
\documentclass[fleqn]{article}
\usepackage{mathtools}
\usepackage{relsize}
\newcommand{\scriptclap}[1]{\mathclap{\scriptstyle #1}}
\newcommand{\LargerSmile}{\mathlarger{\mathlarger{\mathlarger{\mathlarger\smile}}}}
\begin{document}
Some text.
\[ \begin{array}[t]{*7{c@{}}}
90 && 180 && 360 && 600\\[-1ex]
& \LargerSmile & & \LargerSmile & & \LargerSmile &\\[-1ex]
&\scriptclap{+90} & &\scriptclap{+180} && \scriptclap{+240}&\\[-1ex]
& & \LargerSmile & & & &\\[-1ex]
& & \scriptclap{+90} & & & &\\
\end{array} \quad\dots \text{more stuff} \]
More text.
\end{document}
只是more stuff
为了表明您可以将顶行与公式的其他部分对齐。如果不需要,请删除[t]
之后的\begin{array}
。
对于更复杂的任务我建议 Ti钾Z 和tikzmark
图书馆。