右上标点

右上标点

我想实现以下目标:表达式右边的一个点

通过这个最小的例子

\documentclass{article}
\usepackage{amsmath}
\usepackage{accents}

\newcommand{\dotr}[1]{%
#1\accentset{\mbox{\bfseries .}}{\vphantom{#1}}}

\begin{document}
$\dotr{(X+Y)}$
\end{document}

但点太高。我怎样才能降低点?

多谢!

答案1

\bullet使用上标的简单解决方案:

\documentclass{article}
\usepackage{amsmath}

\newcommand{\dotr}[1]{#1^{\bullet}} 

\begin{document}
$\dotr{(X+Y)}$  
\end{document}  

结果

如果项目符号太大,可以使用graphicx包将其缩小。以下示例还测量了第一个术语,并将项目符号放在尽可能高的高度,但不超过前一个术语的高度:

\documentclass{article}
\usepackage{amsmath}
\usepackage{graphicx}

\makeatletter
\newcommand{\dotr}[1]{%
  \mathpalette\@dotr{#1}%
}
\newcommand*{\@dotr}[2]{%
  % #1: math style (\displaystyle, ..., \scriptscriptstyle)
  % #2: argument of \dotr
  \sbox0{$\m@th#1#2$}%
  \usebox{0}%
  % simulating a superscript
  \raisebox{\dimexpr\ht0-\height}{$\m@th#1\@smallbullet#1\bullet$}%
  \kern\scriptspace
}
\newcommand*{\@smallbullet}[2]{%
  \scalebox{.5}{$\m@th#1#2$}%
}
\makeatother

\begin{document}
$\dotr{(X+Y)}$
\end{document}

结果

评论:

  • 小子弹的大小可以通过 的数字来配置\scalebox
  • \mathpalette考虑到当前的数学风格。在问题的答案中进一步解释“的奥秘\mathpalette。因此\@dotr有两个参数,第一个参数是数学风格。
  • \m@th只是一个快捷方式(在 LaTeX 内核中定义),用于\mathsurround=0pt某些情况下在数学公式周围留有额外空白的功能。
  • \sbox是使用水平框设置框寄存器(第一个参数)的 LaTeX 版本,其内容在第二个参数中给出。它应该在 LaTeX 手册中解释。即使低于 10 的框号也是用于本地分配的免费临时寄存器。该组由间接给出\mathpalette

答案2

另一种方法:

\documentclass{article}
\usepackage{amsmath}

\newcommand{\dotr}{\mbox{$\boldsymbol{\cdot}$}}

\begin{document}
$(X+Y)^{\dotr}$
\end{document}

示例代码的输出

答案3

您的标题说“左”,但您的示例代码有一个标准的右上标?

假设你想把它放在右边,我可能会这样做

(X+Y)^{\cdot}

答案4

请比较:

\documentclass{article}
\usepackage{amsmath}
\usepackage{accents}

\newcommand{\dotr}[1]{%
#1\accentset{\mbox{\bfseries .}}{\vphantom{#1}}}

\begin{document}
$\dotr{(X+Y)}$ 

$(X+Y)^{\textstyle\textbf{.}}$
\end{document}

当然,可以校正高度。

在此处输入图片描述

相关内容