
문서를 컴파일할 때 오류가 발생합니다.
Font shape `TS1/TeXGyreTermes(0)/m/n' undefined
(Font) using `TS1/cmr/m/n' instead.
내 문서가 올바르게 컴파일되는 것을 막지는 않지만 이 경고를 받는 것은 정말 짜증나는 일입니다.
나는 이미 다음 명령을 사용하여 문제를 해결할 수 있다는 것을 알았습니다. 더 \DeclareFontFamilySubstitution{TS1}{\rmdefault}{udidot}
이상 사용되지 않는 패키지의 문서를 살펴봄으로써substitutefont
여기.
이 MWE를 사용하면 오류를 재현할 수 있습니다.
\documentclass{scrreprt}
\usepackage{fontspec}
\setmainfont{TeX Gyre Termes}
\usepackage{gensymb}
\usepackage{textcomp}
\usepackage{scrlayer-scrpage}
\begin{document}
asdf
\end{document}
보시다시피 트리 패키지의 조합에서 발생하며 \usepackage{gensymb} \usepackage{textcomp}
사용 \usepackage{scrlayer-scrpage}
만 하면 gensymb
경고가 표시됩니다.
Not defining \perthousand.
Not defining \micro.
이는 패키지 사용으로 해결할 수 있지만 textcomp
이로 인해 초기 오류가 발생합니다.
누군가 나에게 왜 이런 일이 일어나고 명령이 \DeclareFontFamilySubstitution{TS1}{\rmdefault}{udidot}
실제로 무엇을 하는지 설명해 줄 수 있습니까?
답변1
유니코드 글꼴용 글꼴 사양을 사용하여 레거시 tex 인코딩을 사용하거나 패키지 textcomp
하지 마세요 . gensymb
–
T1 인코딩에는 256자만 있으므로 추가 글꼴을 허용하기 위해 TS1 인코딩이 추가되었으므로 추가 256자를 허용하지만 글꼴에 수천 문자를 포함할 수 있는 TU(유니코드) 인코딩 TeX Gyre 글꼴을 사용하고 있습니다. 보시다시피 유해하고 유니코드 설정을 깨뜨리는 것은 필요하지 않습니다.
최근 라텍스 릴리스 textcomp
에서는 클래식 8비트 라텍스 또는 pdflatex가 기본적으로 사전 로드되어 있고 TS1 인코딩 글꼴이 기본적으로 사용 가능하므로 유용하지 않습니다.