Soul + Highlight entfernt einige Zeichen aus dem Text

Soul + Highlight entfernt einige Zeichen aus dem Text

Hier ist ein MWE:

\documentclass[a4paper,11pt]{article}
\usepackage{polyglossia}
\usepackage[normalem]{ulem}
\defaultfontfeatures{Ligatures=TeX}
\setmainlanguage{magyar}
\usepackage{color}
\usepackage{soul}

\begin{document}

árvíztűrő tükörfórógép

ÁRVÍZTŰRŐ TÜKÖRFÚRÓGÉP

\hl{árvíztűrő tükörfórógép}

\hl{ÁRVÍZTŰRŐ TÜKÖRFÚRÓGÉP}

\end{document}

Hier sind einige interessante Nachrichten aus dem Protokoll:

Missing character: There is no ű in font ectt1000!
Missing character: There is no ő in font ectt1000!
Missing character: There is no ű in font ectt1000!
Missing character: There is no Ű in font ectt1000!
Missing character: There is no Ő in font ectt1000!
Missing character: There is no Ű in font ectt1000!

Ich bin mir nicht sicher, warum es sich über die Schriftart ectt1000 beschwert. Es ist deutlich zu sehen, dass der hervorgehobene Text und der normale Text dieselbe Schriftart verwenden. Ich sehe keine Fehlermeldungen im Protokoll. (Auch keine Warnungen – aber diese Art der Fehldarstellung sollte definitiv einen Fehler auslösen!)

Hier ist die Ausgabe:

Ausgabe

Antwort1

Da Sie xelatex/lualatex verwenden, benötigen Sie eine OpenType-Schreibmaschinenschriftart, die alle Glyphen enthält. Außerdem muss die Standardbreite des Bindestrichs auf diese Schriftart zurückgesetzt werden. In Ihrem Beispiel können Sie Latin Modern Mono verwenden, aber wenn Sie andere Schriften haben, benötigen Sie möglicherweise eine andere.

\documentclass[a4paper,11pt]{article}
\usepackage{fontspec}
\usepackage{color}
\usepackage{soul}
\makeatletter
\font\SOUL@tt="LMMono10-Regular"
\setbox\z@\hbox{\SOUL@tt-}
\SOUL@ttwidth\wd\z@ %reset default width of -
\makeatother
\begin{document}

árvíztűrő tükörfórógép

ÁRVÍZTŰRŐ TÜKÖRFÚRÓGÉP

\hl{árvíztűrő tükörfórógép}

\hl{ÁRVÍZTŰRŐ TÜKÖRFÚRÓGÉP}

\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen