
Какая может быть рабочая стратегия, чтобы получить символы интеграла (\int, \oint, \iint и т. д.) и символ суммы из шрифта mathtime, но в остальном использовать шрифты unicode и unicode-math? Должен быть способ, но я не смог его понять. Есть идеи?
решение1
Вы можете сделать следующее:
\documentclass{article}
\usepackage{amsmath}
\usepackage{unicode-math}
\DeclareFontEncoding{LMP3}{}{}
\DeclareFontSubstitution{LMP3}{mtt}{m}{n}
\DeclareFontFamily{LMP3}{mtt}{}
\DeclareFontShape{LMP3}{mtt}{m}{n}{<->mt2exa}{}
\DeclareSymbolFont{mtprolargesymbols}{LMP3}{mtt}{m}{n}
\makeatletter
\AtBeginDocument{%
\renewcommand{\sum}{\DOTSB\sum@\slimits@}%
\renewcommand{\prod}{\DOTSB\prod@\slimits@}%
\DeclareMathSymbol{\intop}{\mathop}{mtprolargesymbols}{"52}%
\DeclareMathSymbol{\iintop}{\mathop}{mtprolargesymbols}{"92}%
\DeclareMathSymbol{\iiintop}{\mathop}{mtprolargesymbols}{"94}%
\DeclareMathSymbol{\ointop}{\mathop}{mtprolargesymbols}{"48}%
\DeclareMathSymbol{\oiintop}{\mathop}{mtprolargesymbols}{"96}%
\DeclareMathSymbol{\oiiintop}{\mathop}{mtprolargesymbols}{"98}%
\DeclareMathSymbol{\cwointop}{\mathop}{mtprolargesymbols}{"9A}%
\DeclareMathSymbol{\awointop}{\mathop}{mtprolargesymbols}{"9C}%
\DeclareMathSymbol{\cwintop}{\mathop}{mtprolargesymbols}{"9E}%
\DeclareMathSymbol{\barintop}{\mathop}{mtprolargesymbols}{170}%
\DeclareMathSymbol{\slashintop}{\mathop}{mtprolargesymbols}{172}%
\DeclareMathSymbol{\sum@}{\mathop}{mtprolargesymbols}{"50}%
\DeclareMathSymbol{\prod@}{\mathop}{mtprolargesymbols}{"51}%
\def\iint{\DOTSI\iintop\ilimits@}%
\def\iiint{\DOTSI\iiintop\ilimits@}%
\def\oiint{\DOTSI\oiintop\ilimits@}%
\def\oiiint{\DOTSI\oiiintop\ilimits@}%
\def\cwoint{\DOTSI\cwointop\ilimits@}%
\def\awoint{\DOTSI\awointop\ilimits@}%
\def\cwint{\DOTSI\cwintop\ilimits@}%
\def\barint{\DOTSI\barintop\ilimits@}%
\def\slashint{\DOTSI\slashintop\ilimits@}%
\def\slsum{\DOTSB\slsumop\slimits@}%
\def\slprod{\DOTSB\slprodop\slimits@}%
\def\slcoprod{\DOTSB\slcoprodop\slimits@}%
\def\upsum{\DOTSB\upsumop\slimits@}%
\def\upprod{\DOTSB\upprodop\slimits@}%
\def\upcoprod{\DOTSB\upcoprodop\slimits@}%
}
\makeatother
\begin{document}
$\int\oint\iint\sum\prod$
\[\int\oint\iint\sum\prod\]
\end{document}
Для проверки я на самом деле использовал
\documentclass{article}
\usepackage{iftex}
\usepackage{amsmath}
\ifluatex
\usepackage{unicode-math}
\usepackage{kpfonts-otf}
\DeclareFontEncoding{LMP3}{}{}
\DeclareFontSubstitution{LMP3}{mtt}{m}{n}
\DeclareFontFamily{LMP3}{mtt}{}
\DeclareFontShape{LMP3}{mtt}{m}{n}{<->mt2exa}{}
\DeclareSymbolFont{mtprolargesymbols}{LMP3}{mtt}{m}{n}
\makeatletter
\AtBeginDocument{%
\renewcommand{\sum}{\DOTSB\sum@\slimits@}%
\renewcommand{\prod}{\DOTSB\prod@\slimits@}%
\DeclareMathSymbol{\intop}{\mathop}{mtprolargesymbols}{"52}%
\DeclareMathSymbol{\iintop}{\mathop}{mtprolargesymbols}{"92}%
\DeclareMathSymbol{\iiintop}{\mathop}{mtprolargesymbols}{"94}%
\DeclareMathSymbol{\ointop}{\mathop}{mtprolargesymbols}{"48}%
\DeclareMathSymbol{\oiintop}{\mathop}{mtprolargesymbols}{"96}%
\DeclareMathSymbol{\oiiintop}{\mathop}{mtprolargesymbols}{"98}%
\DeclareMathSymbol{\cwointop}{\mathop}{mtprolargesymbols}{"9A}%
\DeclareMathSymbol{\awointop}{\mathop}{mtprolargesymbols}{"9C}%
\DeclareMathSymbol{\cwintop}{\mathop}{mtprolargesymbols}{"9E}%
\DeclareMathSymbol{\barintop}{\mathop}{mtprolargesymbols}{170}%
\DeclareMathSymbol{\slashintop}{\mathop}{mtprolargesymbols}{172}%
\DeclareMathSymbol{\sum@}{\mathop}{mtprolargesymbols}{"50}%
\DeclareMathSymbol{\prod@}{\mathop}{mtprolargesymbols}{"51}%
\def\iint{\DOTSI\iintop\ilimits@}%
\def\iiint{\DOTSI\iiintop\ilimits@}%
\def\oiint{\DOTSI\oiintop\ilimits@}%
\def\oiiint{\DOTSI\oiiintop\ilimits@}%
\def\cwoint{\DOTSI\cwointop\ilimits@}%
\def\awoint{\DOTSI\awointop\ilimits@}%
\def\cwint{\DOTSI\cwintop\ilimits@}%
\def\barint{\DOTSI\barintop\ilimits@}%
\def\slashint{\DOTSI\slashintop\ilimits@}%
\def\slsum{\DOTSB\slsumop\slimits@}%
\def\slprod{\DOTSB\slprodop\slimits@}%
\def\slcoprod{\DOTSB\slcoprodop\slimits@}%
\def\upsum{\DOTSB\upsumop\slimits@}%
\def\upprod{\DOTSB\upprodop\slimits@}%
\def\upcoprod{\DOTSB\upcoprodop\slimits@}%
}
\makeatother
\else
\usepackage[lite]{mtpro2}
\fi
\begin{document}
$\int\oint\iint\sum\prod$
\[\int\oint\iint\sum\prod\]
\end{document}
поэтому я мог бы набрать то же самое с помощью pdflatex
или lualatex
и сравнить вывод, который, по-видимому, одинаков (для проверки использовался отличительный математический шрифт).
Предостережение.Некоторые другие символы могут нуждаться в обработке.