![여러 xeCJK 글꼴](https://rvso.com/image/392334/%EC%97%AC%EB%9F%AC%20xeCJK%20%EA%B8%80%EA%BC%B4.png)
xeCJK의 기본 글꼴을 HanWangMingMedium으로 설정하여 이전 스타일 문자에 액세스할 수 있도록 했습니다. 그러나 결과적으로 더 이상 일본어 가나에 액세스할 수 없습니다. MWE에서는 가타카나가 공백으로 표시됩니다.
기본 xeCJK 글꼴은 이 문제를 일으키지 않지만 필요한 특정 문자(예: 烝)를 제공하지 않습니다. 문서 본문 내에서 xeCJK 글꼴을 변경하려면 어떻게 해야 하며, 기본 xeCJK 글꼴은 무엇입니까?
답변과 관련이 있을 수 있습니다. 저는 쓰기 시스템에 대해 글을 쓰고 있습니다. 따라서 고립된 문자만 필요합니다. 중국어 텍스트의 긴 섹션이 없습니다.
% !TEX encoding = UTF-8 Unicode
\documentclass{article}
\usepackage{fontspec}
\usepackage{xeCJK}
\setCJKmainfont{HanWangMingMedium}
\begin{document}
東風フォント
\end{document}
업데이트. 여기에 해킹이 있습니다. 대체 글꼴이 산세리프 변형인 것으로 가정합니다. 그러나 나는 여전히 적절한 해결책을 원합니다.
% !TEX encoding = UTF-8 Unicode
\documentclass{article}
\usepackage{fontspec}
\usepackage{xeCJK}
\setCJKmainfont{HanWangMingMedium}
\setCJKsansfont{AozoraMinchoRegular}
\begin{document}
東風\sf フォント.
\end{document}
답변1
에서는 babel
일본어와 중국어 번체를 포함한 다양한 표의 문자 간에 전환할 수 있습니다.
\documentclass{standalone} % Replace with the real class.
\usepackage[english]{babel}
\usepackage{fontspec}
% A bug in Babel 3.22 requires setting the script= option to CJK and Kana,
% respectively.
\babelprovide{chinese-traditional}
\babelprovide{japanese}
\defaultfontfeatures{Scale = MatchUppercase}
\babelfont{rm}[Scale = 1.0,
Ligatures = {Common, TeX},
Language = Default
]{Latin Modern Roman}
\babelfont{sf}[Ligatures = {Common, TeX},
Language = Default]{Latin Modern Sans}
\babelfont[chinese-traditional]{rm}{NotoSerifCJKtc-Regular}
\babelfont[chinese-traditional]{sf}{NotoSansCJKtc-Regular}
\babelfont[japanese]{rm}{NotoSerifCJKjp-Regular}
\babelfont[japanese]{sf}{NotoSansCJKjp-Regular}
\begin{document}
\otherlanguage{chinese-traditional}{東風}
\otherlanguage{japanese}{フォント}
\end{document}
이를 위해서는 XeLaTeX 및 babel
3.27 이상이 필요합니다. (3.22에서는 버그를 해결하려면 수동으로 설정 하고 해결 babel
해야 합니다 .)Script=CJK
Script=Kana
Noto CJK 글꼴.
\otherlanguage
여기저기 쓸 필요가 없는 Babel의 더 간단한 옵션은 입니다 ucharclasses
. 을 선언하고 옵션을 \newfontfamily
제공 한 후 선택할 수도 있습니다 [Script = Kana, Language = Japanese]
.
업데이트
2021년부터 LuaLaTeX 1.12 이상에서는 여러 표의 문자 스크립트를 사용할 수 있습니다. 이론적으로는 태그를 지정하지 않고 언어 간에 전환하도록 문서를 설정할 수 있습니다. 실제로는 유니코드 컨소시엄이 한자와 중국어에 동일한 코드 포인트를 사용하기로 선택했기 때문에 중국어와 일본어에서는 안정적으로 작동하지 않습니다. (유니코드의 원죄는 모든 것을 16비트에 맞출 수 있다고 생각한 것입니다.)
이 특정 예에서 필요한 유일한 일본어가 히리가나와 가타카나이고 모든 표의 문자가 중국어인 경우 babel
일본어, 중국어 및 영어를 올바르게 감지할 수 있습니다.
\documentclass{standalone} % Replace with the real class.
\usepackage[english]{babel}
\usepackage[svgnames, HTML]{xcolor}
\usepackage{fontspec}
% A bug in Babel 3.22 requires setting the script= option to CJK and Kana,
% respectively.
\babelprovide[import, onchar=ids fonts]{japanese}
\babelprovide[import, onchar=ids fonts]{chinese-traditional}
\defaultfontfeatures{ Scale = MatchUppercase,
Ligatures=TeX }
\babelfont{rm}
[Scale = 1.0,
Ligatures = Common,
Language = Default
]{Latin Modern Roman}
\babelfont{sf}
[Ligatures = Common,
Language = Default
]{Latin Modern Sans}
\babelfont[chinese-traditional]{rm}
[Renderer=HarfBuzz, Color=DarkGreen]{NotoSerifCJKtc-Regular}
\babelfont[chinese-traditional]{sf}
[Renderer=HarfBuzz, Color=DarkGreen]{NotoSansCJKtc-Regular}
\babelfont[japanese]{rm}
[Renderer=HarfBuzz, Color=NavyBlue]{NotoSerifCJKjp-Regular}
\babelfont[japanese]{sf}
[Renderer=HarfBuzz, Color=NavyBlue]{NotoSansCJKjp-Regular}
\begin{document}
東風
\textsf{フォント}
\end{document}
여기서는 언어 전환을 더욱 명확하게 하기 위해 각 언어를 다른 색상으로 설정했습니다.