뚜렷한 이유 없이 글꼴이 다시 변경됨

뚜렷한 이유 없이 글꼴이 다시 변경됨

XeLaTeX에서 대략적인 문법을 작성하고 Fontspec을 사용하여 기본 글꼴을 CM 대신 Bitstream Charter로 변경합니다. 출력의 첫 번째 페이지 정도에서는 모든 것이 잘 작동하지만 두 번째 페이지에서는 글꼴이 갑자기 Computer Modern으로 다시 변경됩니다. 나는 그것에 대한 어떤 이유도 찾을 수 없습니다. 내 서문은 다음과 같이 설정됩니다.

\usepackage[left=0.5in,right=0.5in,top=1in,bottom=1in]{geometry}

\renewcommand{\rmdefault}{bch}
\usepackage{fontspec}
\newfontfamily\la{Brill Roman}
\usepackage{xunicode}
\usepackage{xltxtra}

\usepackage{array}
\usepackage{multirow}

\renewcommand{\p}{\textipa}

두 번째 페이지의 출력은 다음과 같습니다. 출력 시각적

그리고 해당 지역의 실제 LaTeX 코드는 다음과 같이 실행됩니다.

\item \la{V} $\to$ any of the vowels or diphthongs.
\item \la{C2} $\to$ optional; restricted to nasals, fricatives, and \la{/l/}.

\end{enumerate}

\item \la{N} -- syllabic nasal. May be any of the nasals.

\end{enumerate}

\large{\textbf{Stress}}

Stress is always on the penultimate syllable.

답변1

최신 TeX 배포판에는 XCharter OpenType 글꼴이 있으므로 이를 대신 사용할 수 있으며 \renewcommand{\rmdefault}{bch}ASCII 문자 외에는 아무것도 제공되지 않습니다.

또한 \la정의한 대로 XeLaTeX가 해당 시점부터 Brill을 사용하도록 지시하는 스위치일 뿐입니다.

올바른 문서는 다음과 같습니다.

\documentclass{article}
\usepackage[left=0.5in,right=0.5in,top=1in,bottom=1in]{geometry}

\usepackage{fontspec}
\setmainfont{XCharter}
\newfontfamily\lafont{Brill Roman}[Color=FF0000]
\DeclareTextFontCommand{\la}{\lafont}

\usepackage{array}
\usepackage{multirow}

\newcommand{\p}{\textipa}

\begin{document}

\begin{enumerate}
\item \la{V} $\to$ any of the vowels or diphthongs.
\item \la{C2} $\to$ optional; restricted to nasals, fricatives, and \la{/l/}.
\item \la{N} -- syllabic nasal. May be any of the nasals.
\end{enumerate}

{\large\textbf{Stress}\par}

Stress is always on the penultimate syllable.

\end{document}

\la지금 은 참고하세요하다논쟁을 벌이지만 \large그렇지 않습니다. 텍스트는 Charter 글꼴로 되어 있고 \lawill 인수의 텍스트는 Brill로 되어 있습니다(예제에서는 더 강조하기 위해 빨간색으로 표시했습니다. Color=FF0000옵션을 제거했습니다).

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

시스템 글꼴이 없으면 XCharter더 복잡한 설정을 사용할 수 있습니다.

\setmainfont{XCharter}[%
  Extension=.otf,
  UprightFont=*-Roman,
  ItalicFont=*-Italic,
  BoldFont=*-Bold,
  BoldItalicFont=*-BoldItalic,
]

또한 xunicode및 는 xltxtra일반적으로 로드되어서는 안 됩니다.

사용 가능한 버전에 따라 필수 및 선택적 인수의 순서를 및 fontspec로 전환해야 할 수도 있습니다 .\setmainfont\newfontfamily

\newfontfamily\lafont[Color=FF0000]{Brill Roman}
\setmainfont[%
  Extension=.otf,
  UprightFont=*-Roman,
  ItalicFont=*-Italic,
  BoldFont=*-Bold,
  BoldItalicFont=*-BoldItalic,
]{XCharter}

이 경우 TeX 배포판을 업데이트하는 것이 더 좋습니다.

답변2

~에

\la{N}

아무것도 {}하지 않고 \la인수를 취하지 않으며 현재 그룹의 나머지 부분에 대해 글꼴을 전환합니다. 이 경우에는 \end{enumerate}해당 시점에서 글꼴(및 기타 로컬 선언)이 에 있던 값으로 되돌아갑니다 \begin{enumerate}.

\la단순히 글꼴을 변경하려는 것인지 N아니면 문서의 글꼴을 변경하려는 경우 어떤 경우에 사용할 수 있는지는 확실하지 않습니다.

 \setmainfont{Brill Roman}

관련 정보