Как импортировать символ суммы из шрифта "STIX"

Как импортировать символ суммы из шрифта "STIX"

Я хотел бы использовать символ суммирования, предоставленный пакетом STIX. Я что-то пробовал, но ничего не получилось. Вот что я попробовал.

\documentclass{article}
\usepackage{amssymb,amsmath}
\DeclareSymbolFont{largesymbols}{LS2}{stixex}{m}{n}
\DeclareMathSymbol{\sumop}{\mathop}{largesymbols}{"B3}
\begin{document}
Hi, here is the $\sum$ and $$\sum$$ symbol of STIX
\end{document}

Это выдавало ошибку и вообще не компилировалось :(

решение1

Вам необходимо настроить кодировку LS2и избежать перезаписи largesymbols:

Пример вывода

\documentclass{article}

\usepackage{amssymb,amsmath}

\makeatletter
\DeclareFontEncoding{LS2}{}{\noaccents@}
\makeatother

\DeclareFontSubstitution{LS2}{stix}{m}{n}
\DeclareSymbolFont{xlargesymbols}{LS2}{stixex}{m}{n}
\DeclareMathSymbol{\sumop}{\mathop}{xlargesymbols}{"B3}

\begin{document}

Hi, here is the $\sumop$ and
\[ \sumop \]
symbol of STIX and here are the standard $\sum$ and
\[ \sum \]
symbols.
\end{document}

В вашем образце файла первая ошибка в .logфайле:

LaTeX Error: Encoding scheme `LS2' unknown.

говоря, что схема кодирования не определена. Копание в файле stix.styприводит к тому, как этот файл устанавливает кодировку.

решение2

Ответ Эндрю лишь частичный.

Если вы хотите полностью заменить \sumсимвол STIX, вам необходимо переопределить \sum@:

\documentclass{article}
\usepackage{amssymb,amsmath}

\makeatletter
\DeclareFontEncoding{LS2}{}{\noaccents@} 
\DeclareFontSubstitution{LS2}{stix}{m}{n}

\DeclareSymbolFont{largesymbolsSTIX}{LS2}{stixex}{m}{n}
\DeclareMathSymbol{\sum@}{\mathop}{largesymbolsSTIX}{"B3}
\makeatother

\begin{document}         

Hi, here is the $\sum$ and $\displaystyle\sum$ symbol of STIX

\end{document}

введите описание изображения здесь

  1. Пакет amsmathсохраняется \sum, \sum@а затем переопределяется \sumв сложный макрос; это делается для того, чтобы соответствовать функциям \dotsи учитывать параметры sumlimitsили nosumlimits.

  2. Одного лишь определения \sumopнедостаточно, чтобы символ соответствовал вышеуказанным характеристикам.

  3. Кодировка шрифта LS2неизвестна LaTeX, поэтому ее следует объявить перед ссылкой на шрифт, использующий ее. Требуемую \DeclareFontEncodingкоманду можно найти в stix.sty.

Связанный контент