mtpro2
我想使用包和 xetex以 tufte 风格创建一本希腊语书。
\documentclass[twoside]{tufte-book}
\usepackage{mtpro2}
\usepackage{amsmath}
\usepackage[no-math,cm-default]{fontspec}
\usepackage{xunicode}
\usepackage{xltxtra}
\usepackage{xgreek}
\defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
\setmainfont[Mapping=tex-text,Numbers=Lining,Scale=1.0]{Times New Roman}
\usepackage{mtpro2}
\begin{document}
Μαθηματικά
\end{document}
我收到以下错误:
Command `\hbar' already defined. ...thSymbol{\hbar} {\mathord}{symbols}{"84}
Option clash for package fontspec. \usepackage
答案1
该\hbar
宏由包定义xunicode
。以下是经过修改的序言,应该可以正常工作:
\PassOptionsToPackage{no-math,cm-default}{fontspec}
\documentclass[twoside,nofonts]{tufte-book}
\usepackage{amsmath}
\usepackage{xgreek}
\defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
\setmainfont[Mapping=tex-text,Numbers=Lining,Scale=1.0]{Times New Roman}
\let\hbar\relax
\usepackage{mtpro2}
\begin{document}
Μαθηματικά
\end{document}
我在你的序言中修改了以下内容:
- 将选项从
\usepackage[no-math,cm-default]{fontspec}
移至\PassOptionsToPackage
顶部的行。由于 Tufte-LaTeX 将fontspec
自动加载包,因此这将传递您的选项,并且您不会因选项冲突而出现错误。 nofonts
在该行中添加了\documentclass
禁止 Tufte-LaTeX 设置其自己的字体的选项。- 删除了第一
\usepackage{mtpro2}
行。你不需要重复这么做。 - 删除了
\usepackage{xunicode}
和\usepackage{xltxtra}
行,因为 Tufte-LateX 会自动为您加载这些。 \let\hbar\relax
在加载包之前添加了该行mtpro2
。这将“取消定义”\hbar
宏,以便mtpro2
包可以自行定义它。