使用问题的答案移动 hbar 上的栏(复制/粘贴并调整参数,并mathchar'26
用较短的替换mathchar'55
),我能够创建一个禁止的 q。不幸的是,当我用作\qbar
索引时,此符号表现不佳。
我使用字体包eulervm
:
\documentclass[11pt]{scrartcl}
\usepackage{eulervm}
\usepackage{mathtools}
\makeatletter
\newcommand{\raisemath}[1]{\mathpalette{\raisem@th{#1}}}
\newcommand{\raisem@th}[3]{\raisebox{#1}{$#2#3$}}
\makeatother
\newcommand{\qbar}{\ensuremath{\mathrlap{\raisemath{-3.2}{\hspace*{3.2pt}
{\mathchar'55\mkern-9mu}}}q}}
\begin{document}
{\Huge$\qbar$} \qquad $\qbar$ \qquad $U_{\qbar}$
\end{document}
我应该使用什么代码才能在两种情况下获得相同的符号?我还注意到,我必须重新配置\qbar
这个问题定义中的参数,大概是与其他包或选项有一些交互……这是我第一次尝试以这种方式创建符号。如果您知道更好的方法,或者可以为我提供解释如何做到这一点的资源,那也太好了!
答案1
我会使用不同的方法;像 3.2pt 这样的绝对测量值只适用于一种尺寸。
\documentclass[11pt]{scrartcl}
\usepackage{eulervm,mathtools}
\makeatletter
\newcommand{\qbar}{\text{\q@bar}}
\newcommand{\q@bar}{%
\vphantom{$\m@th q$}%
\ooalign{%
$\m@th q$\cr
\hidewidth\smash{\raisebox{-0.7ex}{$\m@th\mathchar'55$}}\hidewidth\cr}%
}
\makeatother
\begin{document}
\fbox{\Huge $q$}\,\fbox{\Huge$\qbar$} \quad $\qbar$ \quad $U_{\qbar}\ne U_{q}$
\end{document}
这两个\fbox
命令表明的边界框\qbar
与的相同q
。
如果你希望横线穿过下降部,那么添加一些水平空间,将 的定义更改\q@bar
为
\newcommand{\q@bar}{%
\vphantom{$\m@th q$}%
\ooalign{%
$\m@th q$\cr
\hidewidth\kern.3em\smash{\raisebox{-0.7ex}{$\m@th\mathchar'55$}}\hidewidth\cr}%
}
上述输入将给出
答案2
如果你能够使用 Lua 或 XeLaTeX,你可能想要使用 unicodeU+A757
只需寻找支持此符号的字体并像在我的 MWE 中一样加载它:
% arara: lualatex
\documentclass{article}
\usepackage{fontspec}
\setmainfont{EB Garamond}
\usepackage{mathtools}
\newcommand*{\qbar}{\ensuremath{\text{\symbol{"A757}}}}
\begin{document}
A test for EB Garamond in math mode \fbox{$\qbar$} \fbox{$\mathrm{q}$} and text mode \fbox{\qbar} \fbox{q}.
\end{document}
不幸的是我找不到倾斜或斜体的版本。
您还可以使用另一种字体定义符号作为周围的文本:
% arara: lualatex
\documentclass{article}
\usepackage{fontspec}
\usepackage{mathtools}
\newcommand*{\qbar}{\ensuremath{\text{{\setmainfont{quivira.otf}\symbol{"A757}}}}}
\begin{document}
\[\qbar_{\qbar_\qbar}\]
\end{document}
以下是我在系统上找到的一些不同符号:
% arara: lualatex
\documentclass{article}
\usepackage{fontspec}
\begin{document}
\setmainfont{EB Garamond}\symbol{"A757}
\setmainfont{dejavusans.ttf}\symbol{"A757}
\setmainfont{freeserif.otf}\symbol{"A757}
\setmainfont{quivira.otf}\symbol{"A757}
%\setmainfont{EB Garamond}\symbol{"A756} % not available in upper case
\setmainfont{dejavusans.ttf}\symbol{"A756}
\setmainfont{freeserif.otf}\symbol{"A756}
\setmainfont{quivira.otf}\symbol{"A756}
\end{document}