Fontspec이 메타글꼴 글꼴을 방해하는 이유는 무엇입니까?

Fontspec이 메타글꼴 글꼴을 방해하는 이유는 무엇입니까?

몇 가지 글꼴을 사용하여 문서를 만들어야 합니다. 두세 개는 metafont라틴 기반 언어로 된 대부분의 문서에 사용되는 글꼴이 될 것이며 SE 아시아 언어에는 다른 글꼴을 사용해야 합니다(아마도 TeX 기반 글꼴을 찾을 수 없으므로 TrueType 글꼴이나 이와 유사한 글꼴일 것입니다). SE 아시아 언어에서 작동하는 글꼴). 내가 이해하는 바에 따르면 라틴어 기반 언어의 글꼴을 아주 쉽게 결합할 수 있습니다.

\documentclass{book}
\usepackage[T1]{fontenc}
\begin{document}
Regular {\fontfamily{pzc}\selectfont and special} fonts.
\end{document}

나에게 원하는 효과를 제공합니다 :

여기에 이미지 설명을 입력하세요

fontspec하지만 에 필요한 를 추가하자마자 polyglossiaZapf Chancery( pzc) 글꼴이 더 이상 작동하지 않습니다.

\documentclass{book}
\usepackage[T1]{fontenc}
\usepackage{fontspec}
\usepackage{polyglossia}
\newfontfamily\thaifont{Norasi}
\setdefaultlanguage{english}
\setotherlanguage{thai}
\begin{document}
English regular {\fontfamily{pzc}\selectfont and special} fonts.\\
\begin{thai}ตัวพิมพ์ภาษาไทย\end{thai}
\end{document}

다음을 생산합니다:

여기에 이미지 설명을 입력하세요

이 문제를 피할 수 있는 방법이 있나요? 분명히 말하자면, 나는생각하다SE 아시아 언어를 사용해야 하는데 polyglossia,~ 해야 하다여러 metafont글꼴도 사용하십시오.

답변

가 지적한 바와 같이울리케 피셔, 그리고 다음에 의해 추가로 설명됩니다.egreg, \fontencoding아래의 메타글꼴 글꼴을 사용할 때 지정해야 합니다. fontspec왜냐하면 후자는 기대하는 EU1반면 전자는 필요하기 때문 T1입니다(내가 이해한 내용을 요약하고 있는데 fontencoding그다지 많지 않습니다).

\documentclass{book}
\usepackage[T1]{fontenc}
\usepackage{fontspec}
\usepackage{polyglossia}
\newfontfamily\thaifont{Norasi}
\setdefaultlanguage{english}
\setotherlanguage{thai}
\begin{document}
English regular {\fontencoding{T1}\fontfamily{pzc}\selectfont and special} fonts.\\
\begin{thai}ตัวพิมพ์ภาษาไทย\end{thai}
\end{document}

올바른 출력이 생성됩니다.

여기에 이미지 설명을 입력하세요

답변1

필요한 글꼴에 대한 OpenType/TrueType 대체 글꼴을 찾을 수 있는 경우가 종종 있으며 이는 Zapf Chancery의 경우입니다. 복제본은 TeX Gyre Chorus로 사용할 수 있습니다. 그러나 기본 TeX/Metafont 글꼴도 사용할 수 있습니다. Dürer 글꼴의 예는 다음과 같습니다.

\documentclass{book}
\usepackage{fontspec}
\usepackage{polyglossia}

\newfontfamily\thaifont{Sathu} % I don't have Norasi
\newfontfamily\specialfont{TeX Gyre Chorus}

\setmainlanguage{english}
\setotherlanguage{thai}

\usepackage{duerer} % for a MF font

\begin{document}

English regular {\specialfont and special} fonts.\\
\begin{thai}ตัวพิมพ์ภาษาไทย\end{thai}

\textdurm{ABCDE} % duerer has only uppercase

\end{document}

본질적 \textdurm{ABCDE}으로,

{\fontencoding{OT1}\fontfamily{durm}\selectfont ABCDE}

\fontencoding{OT1}(또는 )은 XeLaTeX 및 의 기본 인코딩 이기 \fontencoding{T1}때문에 누락된 것입니다 .fontspecEU1

여기에 이미지 설명을 입력하세요

관련 정보