TeX 中的数学符号

TeX 中的数学符号
  1. 如何在字母上画三个点(类似于 \dot、\ddot)?

  2. 我怎样才能在 {\longrightarrow} 上绘制 {t\to\infty}?

  3. 如何修改水平 {\arrow} 的长度?

谢谢你!

答案1

可扩展箭头可以用纯 TeX 编码。基本上可以从 复制并改编代码amsmath,但我在这里选择了一种更短的方法:

\catcode`@=11
\def\xrightarrow{\futurelet\let@token\@xrightarrow}
\def\@xrightarrow{%
   \ifx\let@token[%
      \def\next{\@@xrightarrow}%
   \else
      \def\next{\@@xrightarrow[]}%
   \fi
   \next}
\def\@@xrightarrow[#1]#2{%
   \mathrel{%
      \mathop{%
        \setbox0=\hbox{\rightarrowfill}%
        \setbox1=\vbox{\hbox{\m@th$\scriptstyle\mkern5mu{#2}\mkern9mu$}
                       \hbox{\m@th$\scriptstyle\mkern5mu{#1}\mkern9mu$}
                       \copy0}
        \hbox to \wd1{\unhbox0}%
        }\limits
        \ifx&#1&\else_{#1\mkern3mu}\fi
        \ifx&#2&\else^{#2\mkern3mu} \fi
    }
}
\catcode`@=12

警告:空度测试\ifx&#1&...不是很安全。

原始答案(LaTeX) 基本包amsmath提供了完成这三件事的工具。三个点可以通过 获得\dddot,而\xrightarrow\xleftarrow提供可扩展的箭头,上面/下面可能有文字。

\documentclass{article}

\usepackage{amsmath}

\begin{document}

\begin{gather*}
\dddot{x} \\
a \xrightarrow{t\to\infty}b \\
a \to b \longrightarrow c \xrightarrow{\qquad} d
\end{gather*}

\end{document}

在此处输入图片描述

答案2

  1. 在具有系统字体的 Unicodeland 中,unicode-math包定义了一个\dddot重音符号(以及一个\ddddot重音符号),因此如果需要处理旧式字体,那么这不是一个答案。

\dddot看起来像这样:

dddot 重音

平均能量损失

\documentclass[12pt,varwidth,border=6pt]{standalone}
\usepackage{xcolor}
\pagecolor{red!3}
\usepackage{unicode-math}
%\usepackage{accents}
\setmathfont{XITS Math}[Colour=blue]
\setmathfontface\masana{Asana Math}
\setmathfontface\mdejavu{DejaVu Math}
\setmathfontface\mtgdeja{TeX Gyre DejaVu Math}
\setmathfontface\mpagella{TeX Gyre Pagella Math}
\setmathfontface\mbonum{TeX Gyre Bonum Math}
\setmathfontface\mschola{TeX Gyre Schola Math}
\setmathfontface\mtermes{TeX Gyre Termes Math}
\setmathfontface\mlatin{Latin Modern Math}
\setmathfontface\mcambria{Cambria Math}
\setmathfontface\mfira{Fira Math}
\setmathfontface\mfreeserif{FreeSerif}
\setmathfontface\mlibert{Libertinus Math}
\setmathfontface\mnoto{Noto Sans Symbols}
\setmathfontface\mqui{Quivira}
\setmathfontface\mstixtwo{STIX Two Math}
\setmathfontface\mstixgen{STIXGeneral}
\setmathfontface\msymbola{Symbola}
\setmathfontface\mgaramond{\detokenize{Garamond-Math}}
\newcommand\mfsize{\Huge}
\setmainfont{Noto Serif}


\newcommand\themassym{\dddot 

答案3

您可以将此代码(MWE 与注释中的解释)与和的组合一起使用,%%%%例如如以下屏幕截图所示:\usepackage[lite]{mtpro2}tikz-cd

在此处输入图片描述

%% Compile and read me!
\documentclass[a4paper,12pt]{article}
\usepackage[lite]{mtpro2}
\usepackage{tikz-cd}
\begin{document}
\[\dddotup{x},  
\begin{tikzcd}[column sep=2cm] %%%% to increase the lenght of the arrow
a \arrow[r, "t\to\infty"] & b
\end{tikzcd}\]
A chain of elements:
\begin{tikzcd}
    a \arrow[r] &[4em] b \arrow[r] &[7em]  c %%%% <---- to increase the lenght of the % arrow arbitrarily [4em] and [7em]
\end{tikzcd}
\end{document}

至少您可以看到,在精简版中,\dddotup使用mtpro2也能以最佳方式在字符上产生点。请参阅第 15 页的指南(使用 MathTımeProfessional II 字体 - 带 LATEX - Walter Schmidt 2008/1/23)。

在此处输入图片描述

相关内容