Zirkumflexe sehen zu klein aus und sind zu nah am Symbol im PDF, das von XeLaTeX aus UTF-8
der Quelle generiert wird mitAsana MathematikSchriftart für Mathematik:
Quelle:
\documentclass[12pt]{article}
\usepackage[T1]{fontenc}
\usepackage{fontspec}
\usepackage[math-style=ISO,bold-style=ISO,nabla=upright,partial=upright,vargreek-shape=unicode]{unicode-math}
\setmathfont{[Asana-Math]}
\newcommand*{\op}[1]{\hat{\mathup{#1}}}
\begin{document}
\begin{equation}
\op{H} = \op{T} + \op{V}
\end{equation}
\end{document}
Ich möchte Zirkumflexe breiter machen, damit sie sich klarer von den darunterliegenden Symbolen abheben, aber das \widehat
ist keine Option, da dadurch Zirkumflexe mit variabler Größe entstehen. Die Lösung inWie kann ich die Größe eines breiten Akzents manuell auswählen? (Mathematikmodus)funktioniert bei mir nicht. Es scheint, als gäbe es eine Inkompatibilität zwischen denaccents
Paket und UTF-8
Kodierung.
Ich mag Asana Math wirklich, deshalb möchte ich die Schriftart nicht ändern.
Antwort1
xparse
Vielleicht wäre es einen Versuch wert, zwei Befehle über das Paket einzuführen :
\DeclareDocumentCommand{\operator}{ s m }{
\IfBooleanTF{#1}{
\widehat{#2}
}{
\hat{#2}}
}
}
Gibt dann \operator{H}
die „normale“ Ausgabe aus und \operator*{H}
streckt den Zirkumflex.
Vielleicht möchten Sie sich auch den folgenden Beitrag ansehen:Wirklich breites Hutsymbolwo das scalerel
Paket verwendet wird. Sie könnten beispielsweise einen Befehl mit zwei Eingaben definieren, wobei die erste die Breite des Hutes angibt und die zweite den Charakter
Bearbeiten:
Ich glaube, ich habe jetzt eine Lösung, nachdem ich mir angesehen habesource2e.pdf
Undencguide.pdf
.
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{fontspec}
\usepackage[math-style=ISO,bold-style=ISO,nabla=upright,partial=upright,vargreek-shape=unicode]{unicode-math}
\setmathfont{[Asana-Math]}
\DeclareSymbolFont{mylargesymbols}{OMX}{cmex}{m}{n}
\DeclareMathAccent{\mywidehat}{\mathord}{mylargesymbols}{"62}
\begin{document}
$\hat{\mathrm{H}} = \hat{\mathrm{T}} + \hat{\mathrm{V}} +\hat{abcdefgh}$
$ \widehat{\mathrm{H}} = \widehat{\mathrm{T}} + \widehat{\mathrm{V}} +\widehat{abcdefgh}$
$ \mywidehat{\mathrm{H}} = \mywidehat{\mathrm{T}} + \mywidehat{\mathrm{V}} +\mywidehat{abcdefgh}$
\end{document}
wird das folgende Ergebnis liefern
Der Hut dehnt sich immer noch aus, aber nicht so dramatisch wie zuvor.
Antwort2
[HINWEIS: Bearbeitung 1 für bessere vertikale Positionierung; Bearbeitung 2 für „Hut“ statt „Keil“] Ich habe keinen Zugriff auf Ihre speziellen Schriftarten, daher befasse ich mich mit dem Problem für die Standardschriftart von LaTeX. Sie müssen meine Lösung neu parametrisieren. Dabei wird das scalerel
Paket zum Strecken des \hat
Symbols ( \char'136
) verwendet. Ich zeige das unveränderte Ergebnis und dann das Ergebnis für einen Parametersatz von Strecken. Sobald Sie die drei Parameter für Ihre Schriftart kalibriert haben, sperren Sie diese Werte in der Definition. \Ht
definiert die vertikale Streckung; \Wd
definiert die horizontale Streckung; und \Dp
definiert den vertikalen Trennungsmultiplikator zwischen Buchstabe und Hut.
\documentclass{article}
\usepackage{amsmath}
\usepackage{scalerel}
\usepackage{adjustbox}
\newlength\svarraycolsep
\newcommand\althat[1]{%
\renewcommand\arraystretch{\Dp}%
\setlength\svarraycolsep{\arraycolsep}%
\setlength\arraycolsep{0in}%
\begin{array}{c}%
\vstretch{\Ht}{%
\hstretch{\Wd}{%
\trimbox{.15ex .75ex .15ex .2ex}{\scalerel*{\char'136}{\rule{1ex}{1ex}}}%
}%
}\\%
#1\\%
\rule{1ex}{0ex}\\%
\end{array}%
\renewcommand\arraystretch{1.0}%
\setlength\arraycolsep{\svarraycolsep}%
}
\parindent 0in
\begin{document}
Hat:
\( \hat{\mathrm{H}} = \hat{\mathrm{T}} + \hat{\mathrm{V}} \)
Carat(char'136):
\def\Ht{1.8}
\def\Wd{4.5}
\def\Dp{.3}
\( \althat {\mathrm{H}} = \althat {\mathrm{T}} + \althat {\mathrm{V}} \)
\end{document}