包 txgreeks 的选项 ISO 与 \mathcal 之间存在冲突

包 txgreeks 的选项 ISO 与 \mathcal 之间存在冲突

当我使用包选项ISO将希腊字母变为斜体时,我发现这\mathcal不起作用。有人能帮我吗?谢谢。


\documentclass{article} 
\usepackage{etex} 
\usepackage{amsfonts} 
\usepackage{amsmath} 
\usepackage[ISO]{txgreeks} 
\begin{document} 
$\mathcal{O}/\mathcal{P}$ 
\end{document} 

当您保留或删除时,您可以看到差异\usepackage[ISO]{txgreeks}

答案1

\mathcal当包txgreeks加载时,数学字体的变化不是不兼容,而是预期的行为,抽象的包装txgreeks

Young Ryu 的 TX Fonts 1 为 TeX 和 LaTeX 的默认数学字体提供了非常完整的替代品,包含所有 CM 符号,甚至所有来自 AMS 字体的符号等等。特别是,希腊字母的直立形状是可用的(它们是法语数学排版所必需的)。该txgreeks软件包允许使用 TX 字体的 LaTeX 用户轻松选择希腊小写和大写字母的形状(斜体或直立)。这与在文档中使用任意文本字体兼容。

txgreek因此,加载包并不奇怪txfonts,它启用了用于数学的 TX 字体,包括用于的字体\mathcal

CM/AMS 字体默认使用斜体表示小写希腊字母。剩余的任务是如何将大写希腊字母变为斜体,将在问题“数学等式中的斜体希腊字母“。

这是 egreg 的修改版回答\var<GreekLetterName>。它用更改了 的宏定义\GreekLetterName。直立符号不会丢失,但可以使用前缀var

\documentclass[a5paper]{article}

\usepackage{amsmath}

\makeatletter
\@for\@tmp:=Gamma,Delta,Theta,Lambda,Xi,Pi,Sigma,Upsilon,Phi,Psi,Omega\do{%
  \expandafter\let\expandafter\@@tmp\csname\@tmp\endcsname
  \expandafter\let\csname\@tmp\expandafter\endcsname\csname var\@tmp\endcsname
  \expandafter\let\csname var\@tmp\endcsname\@@tmp
}
\makeatother

\begin{document}
\subsection*{Lowercase Greek letters in italics}
\[\alpha\beta\gamma\delta\epsilon\varepsilon\dots
\]
\subsection*{Uppercase Greek letters}
\subsubsection*{Italics}
\[\Gamma \Delta \Theta \Lambda \Xi \Pi
\Sigma \Upsilon \Phi \Psi \Omega\]

\subsubsection*{Upright}
\[\varGamma \varDelta \varTheta \varLambda \varXi \varPi
\varSigma \varUpsilon \varPhi \varPsi \varOmega\]
\end{document}

结果

相关内容