多年来,我一直在尝试建立一个真正的多语言环境。现在我终于想把它完成了。为什么下面的 mwe 不起作用?:
\documentclass[a4paper, twoside]{book}
\usepackage{polyglossia}
\newfontfamily{\greekfont}{Calibri}[
Script=Greek,
NFSSFamily=liberationserif,
]
\newfontfamily{\greekfontsf}{Calibri}[
Script=Greek,
NFSSFamily=liberationsans,
]
\newfontfamily\arabicfont[Script=Arabic]{Amiri}%
\newfontfamily\arabicfonttt[Script=Arabic,Scale=.75]{DejaVu Sans Mono}
\newfontfamily\farsifont[Script=Arabic,Scale=1.1,WordSpace=2]{Adobe Arabic}
\newfontfamily\mySymbolsFont{Segoe UI Symbol}
\setdefaultlanguage[spelling=new]{german}
\setotherlanguage[variant=ancient]{greek}
\setotherlanguage[numerals=western]{arabic}
\setotherlanguage{farsi}
\usepackage{longtable}
\begin{document}
\chapter{Deutsch}
content does not matter
\end{document}
沒有線條
\setotherlanguage[numerals=western]{arabic}
\setotherlanguage{farsi}
它与 longtable 一起使用。添加其中任何一个都会破坏它。没有 longtable 它可以工作。但如果我必须放弃 longtable,我需要对跨多页的表格提供替代的多功能支持。
最后,我想要一个德语书籍的环境(所有元字符串,如 Chapter=Kapitel、Table of Contents=Inhaltsverzeichnis,...),但同时包含内联单词和句子片段以及希腊语(必须有)、中文(必须有)、阿拉伯语(必须有)的整个段落,并且能够稍后添加其他脚本(最好有),当然还有英语,但无论如何它都有效。
我正在使用 XeLaTeX(我想自然地输入中文和阿拉伯语,=> Unicode)和 Biber(我有中文和阿拉伯语的作者和标题)。
希望这次我能完成,提前感谢您的帮助。
答案1
由于您使用 xetex 进行编译并选择了阿拉伯语和波斯语,因此polyglossia
会加载bidi
,而它应该最后加载。如果它不是最后加载的,则会产生类似以下的错误:
! Package bidi Error: Oops! you have loaded package longtable after
bidi package. Please load package longtable before bidi package, and
then try to run xelatex on your document again.
如果您不知道已为您polyglossia
加载,这有点令人困惑bidi
。但加载longtable
之前polyglossia
实际上会加载longtable
之前bidi
并修复错误。
顺便说一句,由于许多阿拉伯字体也支持波斯语,如果您选择较少的字体,您的文档将具有更加统一和谐的外观。