Respuesta1
¿Por qué no también 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}
¿Cómo funcionan las macros? En primer lugar, algunos trucos de Mathpalette para tener cuatro argumentos:
- El estilo matemático actual, como siempre.
- la letra que se va a componer, por lo que cualquiera
\imath
y\jmath
- el núcleo (matemático) delante del corazón
- el núcleo matemático después de la combinación, para compensar la protuberancia del corazón que no se tiene en cuenta debido a
\hidewidth
Le hago una \vbox
con \ialign
en su interior que sobrepasa el corazón al pie de la letra.
Finalmente, el corazón es una negrita \heartsuit
en el estilo matemático adecuado sujeto a una transformación afín que aplica reducción y corte.
Quizás sean necesarios algunos experimentos más para los distintos parámetros.