我曾遇到无数问题,试图获得粗体、直立的 theta 符号,顶部有一个粗体帽子,顶部有一个普通的点。
我使用以下代码获得了大部分内容(减去点):(我从这里)
\documentclass{article}
\usepackage{mathtools}
\usepackage{scalerel}
\newsavebox{\foobox}
\newcommand{\slantbox}[2][0]{\mbox{%
\sbox{\foobox}{#2}%
\hskip\wd\foobox
\pdfsave
\pdfsetmatrix{1 0 #1 1}%
\llap{\usebox{\foobox}}%
\pdfrestore
}}
\newcommand\unslant[2][-.25]{%
\mkern1mu%
\ThisStyle{\slantbox[#1]{$\SavedStyle#2$}}%
\mkern-1mu%
}
\newcommand{\utheta}{\unslant\theta}
\begin{document}
$\boldsymbol{\mathrm{\hat{\utheta}}}$
\end{document}
这给了我我想要的所有内容的输出,除了顶部的一个普通点:
当我将现有代码包装起来时\dot{}
,事情就变得混乱了,错误消息中包含很多@
符号,我想这意味着我真的搞砸了。如果有人能解决这个问题,我将不胜感激!
我不要的东西:
- 一个涉及上希腊字母的解决方案,因为像这样的非对称版本的 theta 在我看来很丑陋。
- 该代码
$\boldsymbol{\mathrm{\dot{\hat{\utheta}}}}$
不是我想要的,因为点是粗体的。 - 请不
pmb
。 - 解决方案涉及更改字体。我坚持使用 Computer Modern 来完成这个项目。
答案1
在顶部堆叠一个点。间隙(当前.5pt
)可通过可选参数进行调整\stackon
。已编辑以采纳 Mico 的建议(除了 +/-1.3 mu 而不是 1.5)。
\documentclass{article}
\usepackage{mathtools}
\usepackage{scalerel,stackengine}
\stackMath
\newsavebox{\foobox}
\newcommand{\slantbox}[2][0]{\mbox{%
\sbox{\foobox}{#2}%
\hskip\wd\foobox
\pdfsave
\pdfsetmatrix{1 0 #1 1}%
\llap{\usebox{\foobox}}%
\pdfrestore
}}
\newcommand\unslant[2][-.25]{%
\mkern1.3mu%
\ThisStyle{\slantbox[#1]{$\SavedStyle#2$}}%
\mkern-1.3mu%
}
\newcommand{\utheta}{\mathord{\unslant\theta}}
\begin{document}
$\boldsymbol{\hat{\utheta}}$
and this
$\stackon[.5pt]{\boldsymbol{\hat{\utheta}}}{.}$
\end{document}
答案2
答案3
\documentclass{article}
\usepackage{mathtools,bm}
\usepackage{scalerel}
\newsavebox{\foobox}
\newcommand{\slantbox}[2][0]{\mbox{%
\sbox{\foobox}{#2}%
\hskip\wd\foobox
\pdfsave
\pdfsetmatrix{1 0 #1 1}%
\llap{\usebox{\foobox}}%
\pdfrestore
}}
\newcommand\unslant[2][-.25]{%
\mkern1mu%
\ThisStyle{\slantbox[#1]{$\SavedStyle#2$}}%
\mkern-1mu%
}
\newcommand{\utheta}{\unslant\theta}
\begin{document}
$\dot{\boldsymbol{\hat{{\utheta}}}}$ $\boldsymbol{\dot{\hat{{\utheta}}}}$
\end{document}