答案1
您不需要同时使用babel
和polyglossia
。以下是一份包含 的文档babel
,以english
作为主要语言,korean
以 作为次要语言,并使用不同的字体(带有luatex
):
\documentclass{article}
\usepackage[english]{babel}
\babelprovide[import, onchar=ids fonts]{korean}
\babelfont{rm}{FreeSerif}
\babelfont[korean]{rm}{Un Batang}
\begin{document}
English text. 한국어는 어근과 접사 등 특정 표지가
붙음에 따라 단어의 기능이 결정되는 교착어로 분류된다.
More English text.
\end{document}
默认情况下,换行是基于字符的,但可以更改。在我的测试中,kotex
似乎与兼容babel
。
答案2
你问,
我怎样才能用 LaTeX 写韩语?
只要您手头有合适的 OpenType 字体并且知道如何加载包fontspec
(直接或间接)(例如,通过polyglossia
包)并且知道如何执行\setmainfont
和\setsansfont
指令,那么用 LaTeX 写韩语真的没有什么特别的。
如果polyglossia
加载了该包,则可以使用\textkorean
将韩语特定的排版规则应用于短字符串。例如,比较下面显示的屏幕截图中的\today
和的输出。(书写没有什么特别的,即输出“Hello World”。)人们将主要使用和来排版较长的段落,例如一个或多个文本段落,以实现韩语特定的格式规则。\textkorean{\today}
\textkorean{Hello World}
\begin{korean}
\end{korean}
我所说的“合适的” OpenType 字体是指同时提供拉丁字形和韩文字形的字体。Noto Serif KR
并Noto Sans KR
满足此条件。
% !TEX TS-program = lualatex
\documentclass{article}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\setotherlanguage{korean}
%% Next, load suitable Opentype fonts, e.g., Noto Serif/Sans KR.
\usepackage{iftex}
\ifluatex
\setmainfont{Noto Serif KR}
\setsansfont{Noto Sans KR}[Scale=MatchUppercase]
\else\ifxetex
\defaultfontfeatures{Path=/Users/mico/Library/Fonts/} % set as needed
\setmainfont{NotoSerifKR-Regular}[BoldFont=NotoSerifKR-Bold]
\setsansfont{NotoSansKR-Regular}[BoldFont=NotoSansKR-Bold,
Scale=MatchUppercase]
\fi\fi
\begin{document}
Hello World. 헬로월드
\textbf{Hello World. 헬로월드}
\textsf{Hello World. 헬로월드}
\textbf{\textsf{Hello World. 헬로월드}}
\today\ vs.\ \textkorean{\today}.
\end{document}