Come posso ottenere caratteri Latin Modern / Computer Modern serif con doppia battuta / lavagna in grassetto che copiano / incollano come unicode quando si usa unicode-math?

Jan 05 2021

Voglio che i miei caratteri vengano copiati e incollati come Unicode quando li copio dal PDF. Voglio anche che assomiglino al tradizionale carattere latino moderno. Per ragioni non correlate, devo usare LuaLaTeX invece di pdflatex. Il unicode-mathpacchetto funziona bene nella maggior parte dei casi, ma produce strani caratteri sans-serif a doppia battuta. Come lo risolvo?

Esempio:

\documentclass{article}
\usepackage{amssymb}
\begin{document}
\[\alpha\beta\gamma\pi\sum\prod1+2+3+4+5+6+7+8+9+0/1!\]
\[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\]
\[\mathbb{abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ}\]
\end{document}

in lualatex

mentre

\documentclass{article}
\usepackage{amssymb}
\usepackage{unicode-math}
\begin{document}
\[\alpha\beta\gamma\pi\sum\prod1+2+3+4+5+6+7+8+9+0/1!\]
\[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\]
\[\mathbb{abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ}\]
\end{document}

in lualatex

Mentre la maggior parte dei personaggi sono identici sono quasi identici, i caratteri maiuscoli doppiati chiaramente non lo sono. Non hanno nemmeno il serif, a differenza del resto dei personaggi. È bello che ora posso ottenere caratteri minuscoli a doppia battuta, ma questo non compensa i caratteri maiuscoli a doppia battuta stridenti e stilisticamente molto diversi. La risposta ahttps://tex.stackexchange.com/a/360609/2066fornisce i caratteri corretti, ma i caratteri non vengono copiati e incollati come se fossero stati battuti due volte. Come faccio a recuperare i caratteri Latin Modern / Computer Modern a doppia battuta senza perdere la funzione unicode-copia-incolla di unicode-math?

(Sono anche curioso della storia qui; perché questi personaggi sono così diversi? https://tex.stackexchange.com/a/525235/2066 dice "Latin Modern Math è un clone di Computer Modern di Knuth e unicode-math produce un output quasi identico con le impostazioni predefinite (con alcuni avvertimenti: l'alfabeto \ mathcal è basato su Euler Calligraphic invece del tradizionale LaTeX).")

Risposte

4 DavidCarlisle Jan 05 2021 at 07:51

Il classico carattere a doppia battuta TeX che mostri nel primo blocco di codice non è affatto derivato da Computer Modern, è il carattere simbolo AMS msbm10 (e le prime due righe sono impostate in Computer Modern, non in Latin Modern)

Il secondo blocco utilizza un carattere coerente per tutte e tre le righe, Latin Modern Math Opentype.

Ci sono altri caratteri OpenType Math ispirati a Computer Modern, in particolare NewComputerModernMath. Potresti preferire la matematica con doppio colpo in questo carattere:

\documentclass{article}
\usepackage{amssymb}
\usepackage{unicode-math}
\setmathfont{New Computer Modern Math}
\begin{document}
\[\alpha\beta\gamma\pi\sum\prod1+2+3+4+5+6+7+8+9+0/1!\]
\[abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ\]
\[\mathbb{abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ}\]
\end{document}