韩语打字机字体

韩语打字机字体

不久前,我问了一些关于 LaTeX 中希腊语的问题,得到了一些很好的回复。在同样的背景下,我现在正在研究韩语,但我在设置打字机/等宽字体时遇到了问题。

对于如何处理这个问题有什么建议吗?

我的 MWE:

\documentclass[twoside]{book}
\tracinglostchars=2

\usepackage{xeCJK}

\setmainfont{Noto Sans CJK SC}[Language=Korean]

\begin{document}
\obeylines
00027         printf({"{}JUST A PRINT STATEMENT\(\backslash\)n"{}});
00027         printf({"{}Just a print statement\(\backslash\)n"{}});
00028         printf({"large 다음에 의해 생성됨 Doxygen 1.8.19\(\backslash\)n"{}});
\begin{verbatim}
00027         printf({"{}JUST A PRINT STATEMENT SOME MORE TEXT SOME MORE TEXT\(\backslash\)n"{}});
00027         printf({"{}Just a print statement some more text some more text\(\backslash\)n"{}});
00028         printf({"large 다음에 의해 생성됨 Doxygen 1.8.19\(\backslash\)n"{}});
\end{verbatim}
\end{document}

答案1

xeCJK您可以使用该包来\setCJKmainfont设置 CJK 字符的字体。该\setmainfont命令也可用于设置非 CJK 字符的字体。

梅威瑟:

\documentclass{article}
\tracinglostchars=2
\usepackage{xeCJK}

\setCJKmainfont{Noto Sans CJK SC}
%\setCJKmonofont{Noto Sans CJK SC} optional: set separate monospace font

\begin{document}
\obeylines
00027         printf({"{}JUST A PRINT STATEMENT\(\backslash\)n"{}});
00027         printf({"{}Just a print statement\(\backslash\)n"{}});
00028         printf({"large 다음에 의해 생성됨 Doxygen 1.8.19\(\backslash\)n"{}});
\begin{verbatim}
00027         printf({"{}JUST A PRINT STATEMENT SOME MORE TEXT\(\backslash\)n"{}});
00027         printf({"{}Just a print statement some more text\(\backslash\)n"{}});
00028         printf({"large 다음에 의해 생성됨 Doxygen 1.8.19\(\backslash\)n"{}});
\end{verbatim}                                                                                                                      
\end{document}

结果:

在此处输入图片描述

您也可以为不同的字体系列设置单独的字体,例如无衬线字体、数学字体或等宽字体。对于等宽字体,命令为\setCJKmonofont。请参阅 xeCJK手动的参见第 6 页并进一步了解字体系列的命令概述。

答案2

以下内容在 TeX Live 2020 上使用 xelatex 进行编译时没有错误:

\documentclass[twoside]{book}
\tracinglostchars=2

\usepackage{xeCJK}

\defaultfontfeatures{Scale = MatchLowercase, Ligatures = TeX}
\setmainfont{Noto Sans}[Scale = 1.0]
\setmonofont{Noto Sans Mono}
%% The Noto Korean fonts can be downloaded from:
%% https://www.google.com/get/noto/help/cjk/
\setCJKmainfont{Noto Sans CJK KR}[Script=Hangul, Language=Korean]
\setCJKmonofont{Noto Sans Mono CJK KR}[Script=Hangul, Language=Korean]

\begin{document}
\obeylines
00027         printf({"{}JUST A PRINT STATEMENT\(\backslash\)n"{}});
00027         printf({"{}Just a print statement\(\backslash\)n"{}});
00028         printf({"large 다음에 의해 생성됨 Doxygen 1.8.19\(\backslash\)n"{}});
\begin{verbatim}
00027         printf({"{}JUST A PRINT STATEMENT SOME MORE TEXT SOME MORE TEXT\(\backslash\)n"{}});
00027         printf({"{}Just a print statement some more text some more text\(\backslash\)n"{}});
00028         printf({"large 다음에 의해 생성됨 Doxygen 1.8.19\(\backslash\)n"{}});
\end{verbatim}
\end{document}

您必须先下载所需的字体,例如Noto Sans CJK KR。 在 Windows 或 Mac 上,确保将它们安装为系统字体,而不仅仅是为您自己安装。

它们不通过 CTAN 分发,但您可以将文件放在以下任意位置:

  • 将它们安装为系统字体。在 Windows 或 Mac 上,请确保为所有用户安装它们,以便 XeTeX 可以找到它们。
  • 一些 Linux 发行版会将它们打包并保持更新。在 Debian 或 Ubuntu 上,它们位于apt软件包中fonts-noto-cjk
  • 将它们复制到本地 TEXMF 树。使用 MikTeX,您可以将环境变量设置TEXINPUTS=为此本地目录。
  • 将它们下载到本地文件夹并使用 选择它们Path=,例如\setCJKmonofont{NotoSansMonoCJKkr}[Path = ./customfonts , UprightFont = *-Regular , BoldFont = *-Bold , Extension = .otf](如果这是您下载的版本。)如果您尝试在另一台具有不同版本字体的计算机上编译文档,则此方法会中断。另一方面,这是确保您存档的字体版本完全相同且输出完全相同的唯一方法。
  • 将文件或指向它们的符号链接与.tex文件一起放在项目目录中,然后更改到该目录来编译它们。
  • 在 Linux 上,您可以将字体复制到子目录,/usr/local/share/fonts/为所有人安装,或者~/.fonts/为自己安装。

只有简体中文字体对您有用,是因为有一个 CTAN 包可以安装这些字体。

相关内容