我在文档中使用了以下 preable,当我在文本中同时使用英语和希腊语时,新行中的连字符会出现问题。当我只使用希腊语而不使用包时babel
,一切都会正常,希腊语文本中的连字符也会正确。但是,如果我加载了包,当我用两种语言书写时,babel
就不会出现希腊语连字符。如果我删除它,就不会出现英语连字符。我该如何解决这个问题,以便在两种语言中都有连字符?
问题出现在这一段:
“Ένα πρότυπο(ή αντικείμενο)καθορίζεται από ένα διάνυσμα μετρήσεων(测量值)που ονομάζονται χαρακτηριστικά(特征)。Το διάνυσμα ονομάζεται διάνυσμα χαρακτηριστικών(特征向量)。”
\documentclass[12pt]{article}
\usepackage[top=0.7in, bottom=1.2in, left=0.8in, right=0.8in]{geometry}
\setlength{\parindent}{0cm}
\usepackage{fontspec}
\usepackage{xltxtra}
\usepackage{xgreek}
\usepackage[english]{babel}
\setmainfont[
Ligatures=TeX,
Extension=.otf,
UprightFont=*,
BoldFont=*Bold,
ItalicFont=*It,
BoldItalicFont=*BoldIt,
Mapping=tex-text,
]{GFSArtemisia}
\setsansfont[Mapping=tex-text]{GFSArtemisia.otf}
\usepackage[fleqn]{amsmath}
\usepackage{unicode-math}
\begin{document}
Text Here!
\end{document}
答案1
您可以将 Babel 与英语和希腊语一起使用。但您必须定义您使用的语言。
您可以使用\selectlanguage
和\foreignlanguage
例子:
\documentclass[12pt,greek,english,]{article}
\usepackage[top=0.7in, bottom=1.2in, left=0.8in, right=0.8in]{geometry}
\setlength{\parindent}{0cm}
\usepackage{fontspec}
\usepackage{xltxtra}
\usepackage[]{babel}
\setmainfont[
Ligatures=TeX,
Extension=.otf,
UprightFont=*,
BoldFont=*Bold,
ItalicFont=*It,
BoldItalicFont=*BoldIt,
Mapping=tex-text,
]{GFSArtemisia}
\setsansfont[Mapping=tex-text]{GFSArtemisia.otf}
\usepackage[fleqn]{amsmath}
\usepackage{unicode-math}
\begin{document}
Wrong here:
Ένα πρότυπο (ή αντικείμενο) καθορίζεται από ένα διάνυσμα μετρήσεων (measurements) που
ονομάζονται χαρακτηριστικά (features). Το διάνυσμα ονομάζεται διάνυσμα
χαρακτηριστικών (feature vector)
Correct here:
\selectlanguage{greek}
Ένα πρότυπο (ή αντικείμενο) καθορίζεται από ένα διάνυσμα μετρήσεων
(\foreignlanguage{english}{measurements}) που ονομάζονται χαρακτηριστικά
(\foreignlanguage{english}{features}). Το διάνυσμα ονομάζεται διάνυσμα
χαρακτηριστικών (\foreignlanguage{english}{feature vector})
\end{document}
结果: