Вертикальное позиционирование \dashv и \vdash с помощью kpfonts-otf

Вертикальное позиционирование \dashv и \vdash с помощью kpfonts-otf

Символы \dashvи \vdashс kpfonts-otfкажутся слишком низкими, а не вертикально центрированными. Но поскольку классический kpfontsпакет дает тот же результат, это, похоже, часть дизайна шрифта. Есть ли способ переопределить их в вертикально центрированную версию?

введите описание изображения здесь

\documentclass{article}
\usepackage{kpfonts-otf}
\begin{document}

\( F \dashv U \)

\( U \vdash F \)

\end{document}

решение1

В шрифте Computer Modern (или Latin Modern) вертикальная черта находится на той же высоте, что и заглавные буквы, а горизонтальная черта находится посередине, то есть выше математической оси.

В шрифтах Kp выбор иной: горизонтальный штрих находится на математической оси, а высота вертикального штриха выбирается соответствующим образом.

Латинский современный

введите описание изображения здесь

Шрифты КП

введите описание изображения здесь

Хотите, чтобы символы были выше?

\documentclass{article}
\usepackage{kpfonts-otf}

\AtBeginDocument{%
  \NewCommandCopy\standarddashv\dashv
  \NewCommandCopy\standardvdash\vdash
  \RenewDocumentCommand{\dashv}{}{\mathrel{\mathpalette\raisesymbol\standarddashv}}%
  \RenewDocumentCommand{\vdash}{}{\mathrel{\mathpalette\raisesymbol\standardvdash}}%
}

\makeatletter
\newcommand{\raisesymbol}[2]{%
  \begingroup
  \sbox\z@{$\m@th#1A$}%
  \sbox\tw@{$\m@th#1#2$}%
  \raisebox{\dimexpr(\ht\z@-\ht\tw@)/2}{\usebox{\tw@}}%
  \endgroup
}
\makeatother

\begin{document}

\( F \dashv U \)

\( U \vdash F \)

\({\vdash}\frac{1}{2}\)

\end{document}

введите описание изображения здесь

Связанный контент