如何從“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功能並尊重sumlimitsnosumlimits選項。

  2. 僅僅定義\sumop並不能使符號符合上述特徵。

  3. LS2LaTeX 不知道字體編碼,因此應該在引用使用它的字體之前聲明它。所需的\DeclareFontEncoding命令可以在 中找到stix.sty

相關內容