TeXLive 2019 XeLaTeX에서 실패하는 ModernCV의 히브리어

TeXLive 2019 XeLaTeX에서 실패하는 ModernCV의 히브리어

다음 MWE는 TexLive 2019에서 실행하면 실패합니다. TeXLive 2017 및 2018에서 작동합니다.

\documentclass[english,sans]{moderncv}

\moderncvstyle{banking}
\usepackage[unicode]{hyperref}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\setotherlanguage{hebrew}
\firstname{J}
\lastname{D}
\title{T}

\newfontfamily\englishfont[Language=English,Script=Latin]{Latin Modern Sans}
\newfontfamily\hebrewfont[Language=Hebrew,Script=Hebrew]{DejaVu Sans}

\begin{document}

\makecvtitle{}{}

Lorem ipsum and such

\texthebrew{לורם איפסום}
\end{document}

뒷면 엔진 사용(중요한 경우) 여기의 예는 DejaVu를 사용한 것이지만, David CLM, Simple CLM또는 (2018에서는 작동함) 을 사용하여도 문제가 발생합니다(2019년) Miriam Mono CLM.

내가 얻는 오류는 다음과 같습니다(이것이 라텍스에서 얼마나 의미가 있는지는 모르겠습니다).

! Package polyglossia Error: The current latin font DejaVuSans(0) does not cont
ain the "Hebrew" script!
(polyglossia)                Please define \hebrewfont with \newfontfamily comm
and.

See the polyglossia package documentation for explanation.
Type  H <return>  for immediate help.
 ...       

답변1

문제를 발견한 것 같습니다. 버그가 아니라 기능입니다. TeXLive 2019의 Polyglossia가 더 잘 작동합니다.

documentclass에는 sans 옵션이 있지만 히브리어에는 sans 글꼴이 정의되어 있지 않습니다. "문제"를 해결 \newfontfamily\hebrewfont{}하여 교체했습니다 .\newfontfamily\hebrewfontsf{}

TeXLive 2017(및 2018)에서는 documentclass정의가 기본(영어) 글꼴에만 적용되었습니다. \newfontfamily\hebrewfont{}정의된 다음 명령을 사용 하면 \texthebrew{}기본으로 정의된 글꼴이 실제로 사용됩니다.

TexLive 2019에서는 sans 옵션이 선언된 이후 \texthebrew{}폴리글로시아(polyglossia)라고 불렸을 때 sans family 글꼴을 찾았습니다. 왜냐하면 에 정의된 대로 documentclass달리 정의하지 않는 한 문서는 sans여야 하기 때문입니다.

다음 MWE는 차이점을 보여줍니다.

\documentclass[english,sans]{article} %<--- The document default is defined as sans

\usepackage[unicode]{hyperref}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\setotherlanguage{hebrew}

\newfontfamily\hebrewfont[Language=Hebrew,Script=Hebrew]{David CLM} %<--- notice David
\newfontfamily\hebrewfontsf[Language=Hebrew,Script=Hebrew]{DejaVu Sans}%<--- notice Sans


\begin{document}

Lorem ipsum and such

\textsf{\texthebrew{עברית בסנס}}

\texthebrew{עברית רגיל}
\end{document}

TexLive 2017의 출력은 다음과 같습니다.

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

TexLive 2019의 출력은 다음과 같습니다.

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

문제의 MWE에는 산세 글꼴이 정의되어 있지 않아 오류가 발생했습니다.

관련 정보