Spurious space in \calligra and \textcalligra

bugscalligraphyfontsspacing

It seems to me that \calligra and \textcalligra commands add a spurious space before the text.

Please look at the gaps before the "calligraphic E"s here:

\documentclass{article}
\usepackage{calligra}

\begin{document}
\begin{tabular}{|@{}l}
     {\calligra E}\\
     \textcalligra{E}\\
     E
\end{tabular}
\end{document}

enter image description here

Best Answer

That's a font designer's decision.

\documentclass[twocolumn]{article}
\usepackage{calligra}
\usepackage{xcolor}

\begin{document}

\setlength{\fboxsep}{0pt}
\setlength{\fboxrule}{0.1pt}

\begin{flushleft}
\calligra
\makeatletter
\@tfor\next:=ABCDEFGHIJKLMNOPQRSTUVWXYZ\do{%
  \fbox{\next}\quad
}

\@tfor\next:=abcdefghijklmnopqrstuvwxyz\do{%
  \fbox{\next}\quad
}

\newpage

\makebox[0pt][l]{\color{red}\hspace{0.4em}\smash{\vrule height 10pt depth 11cm width 0.1pt}}%
\@tfor\next:=ABCDEFGHIJKLMNOPQRSTUVWXYZ\do{%
  \fbox{\next}\par
}
\end{flushleft}

\end{document}

Here's the left column

enter image description here

As you see, most capital letters protrude outside their bounding box on the right. Only J protrudes a bit on the left, but just with the descender.

If we look at the right column, where a red line has been added running 0.4em right of the left margin of the bounding box, we see what's the reason:

enter image description here

I guess this is an attempt to avoid overlaps, but I agree that the remedy is worse than the disease. It' might be fine (but it isn't) if ”E” starts a sentence mid-paragraph, but not when it starts the paragraph.

enter image description here

Maybe you want to make a virtual font that cures the bounding box problems…