제가 이번 학기에 듣는 강의 중 하나를 읽으시는 교수님의 글이 너무 느리기 때문에 저는 그 강의의 강의 스크립트를 TeX로 조판했습니다. 일부 기호를 사용하고 더 나은 언더브레이스 렌더링을 위해 MnSymbol을 사용합니다. MnSymbol에 익숙한 분들은 아시겠지만 amsmath-package와는 다른 합계 연산자를 제공합니다. 또한 다른 적분 연산자도 제공하지만 저는 amsmath 수학 연산자를 더 좋아하기 때문에 "esint"를 마지막 수학 글꼴 패키지로 로드하여 이미 수정했습니다. MnSymbol 사용을 중단하지 않고도 합계 연산자를 표준 연산자로 쉽게 "수정"할 수 있는 방법이 있습니까? 어떤 도움이라도 주시면 감사하겠습니다.
답변1
CM 기호를 MnSymbol로 가져오려면 아래의 후속 조치를 참조하세요. 하지만 먼저...
MnSymbol 가져오기:
몇 개만 사용하는 경우 패키지를 MnSymbol
로드하는 것보다 해당 항목만 가져오는 것이 가장 쉽습니다 MnSymbol
. 수행 방법은 다음과 같습니다( MnSymbol
구체적인 참조를 위해 다음을 사용했습니다.기호 위에 점선 왼쪽 화살표, 기호 가져오기에 대한 이 사이트의 다른 질문도 유용합니다.
MnSymbol 패키지 문서(또는 더 나은 방법 mnsymbol.sty
)를 통해 기호가 파생된 글꼴 모음을 찾은 다음 \fonttable
(패키지 fonttable
)를 사용하여 슬롯을 결정할 수 있는 글꼴 모음을 테이블에 표시하는 데 도움이 됩니다. 원하는 글리프에 해당하는 숫자입니다.
mnsymbol.sty
먼저 글꼴 모음을 결정하기 위해 글리프 이름을 살펴보고 이를 사용하여 글꼴 모음을 결정합니다.
위 그림을 보면 \bigcupdot
글리프( \displaystyle
및 \textstyle
)가 \mathop
s이고 글꼴에서 나온 것을 알 수 있습니다 symbols
. 이름은 글꼴 모음 symbols
과 연결되어 있습니다 . MnSymbolF
이는 내 MWE에 필요합니다. 글리프 \cupdot
는 다른 글꼴 모음( MnSymbolC
)에서 나옵니다.
아래 MWE에서는 두 가지 다른 글꼴 모음인 , (textstyle) 및 (displaystyle)에서 3개의 글리프를 가져오는 \cupdot
방법 \tbigcupdot
을 \bigcupdot
보여 \dbigcupdot
줍니다 \bigcupdot
. 그런 다음 \mathchoice
LaTeX에게 적절한 수학 스타일에서 적절한 bigcupdot 스타일을 사용하도록 지시하기 위해 를 사용합니다 .
에 관한 내가 주석 처리한 줄의 주석 처리를 제거하면 fonttable
내가 글리프의 슬롯 번호를 결정한 글꼴 테이블을 볼 수 있습니다.
\documentclass{article}
% =============================================
%Import symbols from font MnSymbol without importing the whole package
% =============================================
\DeclareFontFamily{U} {MnSymbolC}{}
\DeclareFontShape{U}{MnSymbolC}{m}{n}{
<-6> MnSymbolC5
<6-7> MnSymbolC6
<7-8> MnSymbolC7
<8-9> MnSymbolC8
<9-10> MnSymbolC9
<10-12> MnSymbolC10
<12-> MnSymbolC12}{}
\DeclareFontShape{U}{MnSymbolC}{b}{n}{
<-6> MnSymbolC-Bold5
<6-7> MnSymbolC-Bold6
<7-8> MnSymbolC-Bold7
<8-9> MnSymbolC-Bold8
<9-10> MnSymbolC-Bold9
<10-12> MnSymbolC-Bold10
<12-> MnSymbolC-Bold12}{}
\DeclareSymbolFont{MnSyC} {U} {MnSymbolC}{m}{n}
\DeclareMathSymbol{\cupdot}{\mathbin}{MnSyC}{60}
% =============================================
\DeclareFontFamily{U} {MnSymbolF}{}
\DeclareFontShape{U}{MnSymbolF}{m}{n}{
<-6> MnSymbolF5
<6-7> MnSymbolF6
<7-8> MnSymbolF7
<8-9> MnSymbolF8
<9-10> MnSymbolF9
<10-12> MnSymbolF10
<12-> MnSymbolF12}{}
\DeclareFontShape{U}{MnSymbolF}{b}{n}{
<-6> MnSymbolF-Bold5
<6-7> MnSymbolF-Bold6
<7-8> MnSymbolF-Bold7
<8-9> MnSymbolF-Bold8
<9-10> MnSymbolF-Bold9
<10-12> MnSymbolF-Bold10
<12-> MnSymbolF-Bold12}{}
\DeclareSymbolFont{SymbolF} {U} {MnSymbolF}{m}{n}
\DeclareMathSymbol{\dbigcupdot}{\mathop}{SymbolF}{35}
\DeclareMathSymbol{\tbigcupdot}{\mathop}{SymbolF}{34}
\def\bigcupdot{\mathchoice{\dbigcupdot}{\tbigcupdot}{\tbigcupdot}{\tbigcupdot}}
% =============================================
%\usepackage{fonttable}
\begin{document}
\centering
$ x \cupdot y$\par
$ x \bigcupdot y \quad \scriptstyle x \bigcupdot y
\quad \scriptscriptstyle x \bigcupdot y$
\[ x \bigcupdot y\]
%\clearpage\fonttable{MnSymbolF8}
%\clearpage\fonttable{MnSymbolC10}
\end{document}
후속 조치:
\sum
OP는 MnSymbol이 기본 LaTeX에서 가져오는 등의 기본값이 될 수 있는지 물었습니다 . barbara가 주석에서 지적했듯이 기본값은 \sum
cmex 글꼴 세트에서 나옵니다. 여기서는 다음과 같이 가져옵니다 \Xsum
(내 호출이 cm 글꼴에 적합한지는 확실하지 않지만 \DeclareFontShape
MnSymbol에 대해 수행된 작업을 모방했습니다).
\documentclass{article}
\usepackage{mnsymbol}
% =============================================
%Import symbols from font cmex without importing the whole package
% =============================================
\DeclareFontFamily{U} {cmex}{}
\DeclareFontShape{U}{cmex}{m}{n}{
<-6> cmex5
<6-7> cmex6
<7-8> cmex7
<8-9> cmex8
<9-10> cmex9
<10-12> cmex10
<12-> cmex12}{}
\DeclareSymbolFont{Xcmex} {U} {cmex}{m}{n}
\DeclareMathSymbol{\Xdsum}{\mathop}{Xcmex}{88}
\DeclareMathSymbol{\Xtsum}{\mathop}{Xcmex}{80}
\DeclareMathOperator*{\Xsum}{\mathchoice{\Xdsum}{\Xtsum}{\Xtsum}{\Xtsum}}
% =============================================
\usepackage{fonttable}
\begin{document}
\centering
sum under MnSymbol:\par
$\sum_{i=1}^2 x_i $
\[\sum_{i=1}^2 x_i \]
Defined Xsum from cmex:\par
$\Xsum_{i=1}^2 x_i $
\[\Xsum_{i=1}^2 x_i \]
\tiny\fonttable{cmex8}
\end{document}