latex3 / unicode-math

XeLaTeX/LuaLaTeX package for using unicode/OpenType maths fonts
http://ctan.org/pkg/unicode-math
LaTeX Project Public License v1.3c
239 stars 28 forks source link

Wrong spacing between bold italic math letter and punctuation #631

Open ywwry66 opened 4 months ago

ywwry66 commented 4 months ago

Description

As the title suggests, the spacing between a bold italic math letter and a punctuation is extremely small.

Add info or delete as appropriate:

Minimal example demonstrating the issue

With unicode-math:

\documentclass{article}
\usepackage{unicode-math}

\begin{document}
\(\symbfit{F}\):
\end{document}
Screenshot 2024-02-22 at 12 15 03 PM

Without unicode-math:

\documentclass{article}
\usepackage{bm}

\begin{document}
\(\bm{F}\):
\end{document}
Screenshot 2024-02-22 at 12 14 20 PM

Further details

Thanks for developing and maintaining unicode-math.

davidcarlisle commented 4 months ago

This is a luatex-engine feature rather than unicode-math, luatex only adds the final italic correction in certain modes. Unfortunately different fonts require different settings

image

\documentclass{article}
\usepackage{unicode-math}

\begin{document}
\mathitalicsmode=0
\(\symbfit{F}\):
\mathitalicsmode=1
\(\symbfit{F}\):
\mathitalicsmode=2
\(\symbfit{F}\):
\mathitalicsmode=3
\(\symbfit{F}\):
\end{document}
ywwry66 commented 4 months ago

Thanks for the quick response. It is very helpful that you pointed out the parameter \mathitalicsmode, which I did't know as a new luatex user. Now that I have played around a bit with this parameter, I found it difficult to get some universally good result, even with the default latin modern font. I guess this is the same situation as in https://tex.stackexchange.com/questions/697498/luatex-unicode-math-and-italic-correction?newreg=3a41de22bad0468193ef5b1051d9346f.

Since this is less of a unicode-math issue as you mentioned, I am going to close it and hopefully italic correction will become more robust with luatex and opentype fonts.

wspr commented 4 months ago

Thanks for the comments. I think it would be good if unicode-math could provide a setting for this feature, so re-opening the issue to track it.

ywwry66 commented 4 months ago

Thanks. Previously I was going to file another issue, but now I think that may also be relevant here. For the record, let me just add to this issue.

This one is about \widehat, the default result is very weird that smaller size letter gets a larger hat and vice versa. But after adjusting \mathitalicsmode, I got perfect result. Here is a MWE:

\documentclass{article}
\usepackage{unicode-math}

\begin{document}
\(\widehat{S}_{\widehat{S}}\)
\end{document}
Screenshot 2024-02-22 at 9 29 03 PM
\documentclass{article}
\usepackage{unicode-math}

\begin{document}
\mathitalicsmode=2
\(\widehat{S}_{\widehat{S}}\)
\end{document}
Screenshot 2024-02-22 at 9 29 31 PM

There are many questions about \widehat and \widetilde on stackexchange, but I am not sure I have found a satisfactory answer. If this should belong to a new issue, I can definitely open one.