Возможно ли расставить точки над буквой «I» сердечками?

Возможно ли расставить точки над буквой «I» сердечками?

Мне было интересно, можно ли заменить только mathmode i из шрифта latex по умолчанию на почти такую ​​же букву, но где точка на i — это маленькое сердечко. Например:

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

Спасибо!

решение1

Почему бы не j?

\documentclass{article}
\usepackage{amsmath}
\usepackage{l3draw}

\makeatletter
\NewDocumentCommand{\iheart}{}{\mathord{\mathpalette\iheart@{\imath{7}{1}}}}
\NewDocumentCommand{\jheart}{}{\mathord{\mathpalette\iheart@{\jmath{12}{2}}}}
\newcommand{\iheart@}[2]{\iheart@@#1#2}
\newcommand{\iheart@@}[4]{%
  \vbox{\m@th\offinterlineskip
    \sbox\z@{$\mkern1mu$}%
    \ialign{##\cr\hidewidth\smallheart@{#1}{#3}\hidewidth\cr\noalign{\kern\wd\z@}\cr$#1#2$\cr}%
  }%
  \mkern#4mu
}

\ExplSyntaxOn
\cs_new_protected:Npn \smallheart@ #1 #2
 {
  \draw_begin:
  \draw_transform_matrix_absolute:nnnn { 0.4 } { 0 } { 0.2 } { 0.3 }
  \draw_path_moveto:n { 0cm, 0cm }
  \hbox_set:Nn \l_tmpa_box { \boldmath$#1\mkern#2mu\heartsuit$ }
  \draw_box_use:N \l_tmpa_box
  \draw_end:
 }
\ExplSyntaxOff
\makeatother

\begin{document}

$2\pi\iheart_{\jheart}+\jheart$

\end{document}

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

Как работают макросы? Сначала немного трюков с mathpalette, чтобы иметь четыре аргумента:

  1. текущий математический стиль, как обычно
  2. письмо должно быть набрано, поэтому либо \imathи\jmath
  3. (математический) керн перед сердцем
  4. математический керн после комбинации, чтобы компенсировать выпячивание сердца, которое не принимается во внимание из-за\hidewidth

Я делаю внутри него \vboxто \ialign, что переворачивает сердце до последней буквы.

Наконец, сердце — это жирный шрифт \heartsuitв подходящем математическом стиле, подвергаемый аффинному преобразованию, которое применяет сокращение и сдвиг.

Возможно, необходимо провести еще несколько экспериментов для различных параметров.

решение2

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

\documentclass{article}
\begin{document}
$2\pi{\mathop{{}\imath}\limits^{\scriptscriptstyle\heartsuit}}$
\end{document}

решение3

мве

\documentclass{article}
\usepackage{amsmath,graphicx}
\newcommand\iheart[1][\imath]{%
#1\kern-.2em\rlap{%
\raisebox{1.2ex}[0pt][0pt]{%
\rotatebox{-15}{%
\resizebox{.5ex}{.5ex}{\ensuremath{\heartsuit}}}}}\kern.2em} 
\begin{document}
\Huge  \[ 2\pi ii\iheart ii  =  2\pi\iheart[\jmath] \]
\end{document}

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