在文本模式下在希腊字母上添加一个点

在文本模式下在希腊字母上添加一个点

我搜索过但未找到以下问题的解决方案。我尝试使用该textgreek包将点重音符号的位置移到希腊字母上。但是,点移到了字母的左侧。我见过在数学模式下解决此问题的解决方案,但我想在文本模式下使用希腊字母。任何帮助都将不胜感激。

最小的工作示例看起来像这样。

\documentclass[9pt,twocolumn,twoside,lineno]{article}

\usepackage{textgreek}

\begin{document}

     I would like this \.{\textgamma}, and not
     $\dot{\gamma}$ this.

\end{document}

答案1

stackengine包默认为文本模式堆叠,可在此处使用。注意9pt不是有效的文档类设置(有效设置为10pt11pt12pt)。可选参数\stackon定义字母和点之间的间隙。

\documentclass[twocolumn,twoside,lineno]{article}

\usepackage{textgreek,stackengine}

\begin{document}

     I would like this \stackon[1pt]{\textgamma}{.}, and not
     $\dot{\gamma}$ this.

\end{document}

enter image description here

我们可以创建一个通用\textdot{}定义

\documentclass[twocolumn,twoside,lineno]{article}
\usepackage{textgreek,stackengine}
\newcommand\textdot[1]{\stackon[1pt]{\csname text#1\endcsname}{.}}

\begin{document}

     I would like this \textdot{gamma}, and not
     $\dot{\gamma}$ this.

     \textdot{beta}\textdot{Gamma}\textdot{delta}\textdot{epsilon}

\end{document}

enter image description here

答案2

一些低级函数:

\documentclass{article}
\usepackage{textgreek}

\DeclareRobustCommand\grdot[1]{%
  \leavevmode
  \vbox{
    \offinterlineskip
    \ialign{%
      ##\cr
      \hidewidth\.{}\hidewidth\cr
      \noalign{\kern-1ex}
      #1\cr
    }
  }%
}

\begin{document}

I would like this \grdot{\textgamma}, and not
$\dot{\gamma}$ this.

\grdot{\textbeta}\grdot{\textGamma}\grdot{\textdelta}%
\grdot{\textepsilon}

\end{document}

基本上,将一个点重音符号叠加到希腊字母的空框上,但降低 1ex。

enter image description here

相关内容