Fontspec에서 작은 대문자 대체 글꼴 설정

Fontspec에서 작은 대문자 대체 글꼴 설정

내 Mac의 Times New Roman 글꼴에는 작은 대문자 모양이 없습니다. 그래서 TeX Gyre Termes를 작은 대문자 대체 글꼴로 설정하고 싶습니다.

TeX Gyre Termes를 기본 글꼴로 사용

\documentclass{article}
\usepackage{fontspec}
\setmainfont{texgyretermes}%
  [
    Extension      = .otf,
    UprightFont    = *-regular,
    BoldFont       = *-bold,
    ItalicFont     = *-italic,
    BoldItalicFont = *-bolditalic
  ]
\begin{document}

hello
\textsc{hello}
\textbf{\textsc{hello}}
\textit{\textsc{hello}}

\end{document}

결과는 아래와 같이 만족스럽습니다.

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

Times New Roman을 기본 글꼴로 사용

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Times New Roman}
\begin{document}

hello
\textsc{hello}
\textbf{\textsc{hello}}
\textit{\textsc{hello}}

\end{document}

로그에 표시된 대로 글꼴 모양 m/scb/scm/scit모두 누락되었습니다.

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

TeX Gyre Termes를 대체 수단으로 사용

Fontspec 매뉴얼에 따르면 다음과 같이 작은 대문자 대체를 설정할 수 있습니다.

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Times New Roman}%
  [
    SmallCapsFont     = TeX Gyre Termes,
    SmallCapsFeatures = {Letters=SmallCaps}
  ]
\begin{document}

hello
\textsc{hello}
\textbf{\textsc{hello}}
\textit{\textsc{hello}}

\end{document}

lualatex위의 예는 (macOS 사용자는 를 사용할 때 글꼴 이름으로 texmf 트리의 글꼴을 사용할 수 없기 때문에 ) 로만 컴파일할 수 있습니다 xelatex. 그러나 lualatex만족스러운 결과를 얻을 수 없습니다.

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

TeX Gyre Termes 글꼴을 내 시스템에 설치한 후 xelatex사용할 수도 있지만 결과는 위 스크린샷과 동일합니다.

질문

TeX Gyre Termes를 시스템에 설치하지 않고도, macOS 사용자 xelatex모두 에서 작은 대문자 대체 글꼴을 올바르게 설정하는 방법은 무엇입니까 ?lualatex

답변1

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Times New Roman}%
  [
   BoldFeatures = 
     {SmallCapsFont={TeX Gyre Termes Bold},
      SmallCapsFeatures = {Letters=SmallCaps}} ,
   ItalicFeatures = 
    {SmallCapsFont={TeX Gyre Termes Italic},
     SmallCapsFeatures = {Letters=SmallCaps}} ,
  ]
\begin{document}

hello
\textsc{hello}
\textbf{\textsc{hello}}
\textit{\textsc{hello}}
\textbf{\textit{\textsc{hello}}}
\end{document}

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

texmf 트리의 글꼴을 파일 이름으로 찾을 수 없는 시스템에서는 작동할 수 있습니다(테스트되지 않음)

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Times New Roman}%
  [
   BoldFeatures = 
     {SmallCapsFont={texgyretermes-bold},
      SmallCapsFeatures = {Extension=.otf,Letters=SmallCaps}} ,
   ItalicFeatures = 
    {SmallCapsFont={texgyretermes-italic},
     SmallCapsFeatures = {Extension=.otf,Letters=SmallCaps}} ,
  ]
\begin{document}

hello
\textsc{hello}
\textbf{\textsc{hello}}
\textit{\textsc{hello}}
\textbf{\textit{\textsc{hello}}}
\end{document}

관련 정보