Я хотел бы использовать для pdfLaTeX
компиляции пакет gfsporson
для набора греческих символов (в более крупной установке LaTeX, чем MWE ниже) вместе с newtxmath
after newtxtext
, но я только что обнаружил, что первый каким-то образом конфликтует с числительными в математическом режиме и устанавливает шрифты по умолчанию на основе cmr вместо тех, которые предоставляются пакетом newtxmath
(фактически взятых из newtxtext
).
Я был бы признателен за решение, которое позволило бы мне использовать оба пакета с числовыми значениями математического режима, установленными newtx
«пакетом».
Следует MWE:
\documentclass{memoir}
%\usepackage{gfsporson} %<- uncomment to check for the difference in math mode
\usepackage{newtxtext}
\usepackage{newtxmath}
\begin{document}
123 $123$
\end{document}
решение1
Если вам не нужен шрифт символов Porson для чего-то еще — он используется только для чисел, как настроено пакетом — вы можете легко переопределить его, просто переопределив этот шрифт. В противном случае вам придется отменить определенные изменения, которые он делает, как предлагает Стивен Б. Сеглете. Но поскольку вы хотите полностью избежать его влияния на математику, это кажется довольно безопасным.
\documentclass{memoir}
\usepackage{gfsporson} %<- uncomment to check for the difference in math mode
\usepackage{newtxtext}
\usepackage{newtxmath}
\DeclareSymbolFont{porsonnumbers}{OT1}{qtm}{m}{n}
\begin{document}
123 $123$
\end{document}
решение2
Пакет gfsporson
перехватывает инициативу и переопределяет таблицы математических символов, используя Порсон для цифр.
Гораздо лучше использовать \DeclareFontFamilySubstitution
:
\documentclass{memoir}
\usepackage[polutonikogreek,english]{babel}
\usepackage{newtxtext}
\usepackage{newtxmath}
\DeclareFontFamilySubstitution{LGR}{ntxtlf}{porson}
\begin{document}
123 $123$
\textgreek{abgdezhq}
\end{document}
Примечание: см. историю правок для предыдущего решения с использованием пакета substitutefont, который теперь объявлен устаревшим.
решение3
Вам нужно отменить gfsporson
декларацию, делающую числовые цифры принадлежащими символьному шрифту porsonnumbers
. В файле стиля вы найдете это
\DeclareSymbolFont{porsonnumbers}{OT1}{porson}{m}{n}
\DeclareMathSymbol{0}{\mathalpha}{porsonnumbers}{`0}
\DeclareMathSymbol{1}{\mathalpha}{porsonnumbers}{`1}
\DeclareMathSymbol{2}{\mathalpha}{porsonnumbers}{`2}
\DeclareMathSymbol{3}{\mathalpha}{porsonnumbers}{`3}
\DeclareMathSymbol{4}{\mathalpha}{porsonnumbers}{`4}
\DeclareMathSymbol{5}{\mathalpha}{porsonnumbers}{`5}
\DeclareMathSymbol{6}{\mathalpha}{porsonnumbers}{`6}
\DeclareMathSymbol{7}{\mathalpha}{porsonnumbers}{`7}
\DeclareMathSymbol{8}{\mathalpha}{porsonnumbers}{`8}
\DeclareMathSymbol{9}{\mathalpha}{porsonnumbers}{`9}
Поэтому его необходимо сбросить в преамбуле вашего документа.
\documentclass{memoir}
\usepackage[T1]{fontenc}
\usepackage{gfsporson} %<- uncomment to check for the difference in math mode
\usepackage{newtxtext}
\usepackage{newtxmath}
\DeclareMathSymbol{0}{\mathalpha}{letters}{`0}
\DeclareMathSymbol{1}{\mathalpha}{letters}{`1}
\DeclareMathSymbol{2}{\mathalpha}{letters}{`2}
\DeclareMathSymbol{3}{\mathalpha}{letters}{`3}
\DeclareMathSymbol{4}{\mathalpha}{letters}{`4}
\DeclareMathSymbol{5}{\mathalpha}{letters}{`5}
\DeclareMathSymbol{6}{\mathalpha}{letters}{`6}
\DeclareMathSymbol{7}{\mathalpha}{letters}{`7}
\DeclareMathSymbol{8}{\mathalpha}{letters}{`8}
\DeclareMathSymbol{9}{\mathalpha}{letters}{`9}
\begin{document}
123 $123$
\end{document}