经常加载的包:pdfLaTeX 和 XeLaTeX 之间的区别

经常加载的包:pdfLaTeX 和 XeLaTeX 之间的区别

到目前为止,我一直在用 pdfLaTeX 编写我的 LaTeX 文档。我的标准文档序言包括非英语人士的“常见疑点”(inputencfontencbabel) 和一堆其他软件包。假设我要转换为 XeLaTeX,建议对我的序言进行哪些修改?我expansion=true知道microtype软件包尚未适用于 XeLaTeX,并且fontspec是 OpenType 字体的默认软件包。从 pdfLaTeX 切换到 XeLaTeX 时,应该删除哪些其他软件包(和软件包选项),反之亦然。

答案1

此列表中的所有内容可能也适用于 LuaLaTeX,但例外xunicode,它需要 XeTeX。

答案2

尝试使用以下方法实现此主题中给出的所有答案和评论ifxetexpdflatex包,我最终得到了以下代码作为我的序言。它允许在和编译器之间随时切换xelatex。注意:切换编译器时,应删除文件.aux

\documentclass[
    a4paper,
    ngerman
]{scrbook}

\usepackage{amsmath}

\usepackage{ifxetex}
\ifxetex
    % XeLaTeX
    \usepackage{polyglossia}
    \setmainlanguage[spelling=new,babelshorthands=true]{german}
    \usepackage{fontspec}
    \usepackage[]{unicode-math}
    \setmainfont{XITS}
    \setmathfont{XITS Math}
\else
    % default: pdfLaTeX
    \usepackage{babel}
    \usepackage[T1]{fontenc}
    %\usepackage{lmodern}
    \usepackage[adobe-utopia]{mathdesign}
    \usepackage[utf8]{inputenc}
    \usepackage[babel=true]{microtype}
\fi

% some more packages like csquotes, biblatex, hyperref

\begin{document}
...
\end{document}

我必须amsmath在 XeLaTeXsetmathfont命令之前加载包以避免错误。\dddot already defined. 使用 MiKTeX 2.9 时必须使用 MiKTeX 包管理器手动安装 XITS 字体。

答案3

除了您提到的软件包之外,我唯一的区别就是我不加载软件包inputenc并且不设置字体编码。

此外,如果您在软件包选项中给出了显式驱动程序名称(例如hyperrefxcolor),则应删除这些名称。这些驱动程序名称在最坏的情况下是错误的,在最好的情况下是多余的,因为软件包在 中加载时会自动找到正确的驱动程序xelatex

相关内容