로마자, 볼드체, 이탤릭체 — LaTeX에서 글꼴을 전환하는 명령은 처음에는 간단해 보이지만 실제로는 세 개의 독립 축에 깔끔하게 자리잡고 있습니다. 모델이 클릭되면 "굵은 산세리프"와 같은 조합과 전체 단락을 한 번에 전환하는 것이 어지러워지기보다는 분명해집니다. 이 페이지에서는 해당 모델과 \textbf{...} 명령 형식과 {\bfseries ...} 선언 형식 중에서 선택하는 방법을 다룹니다.
폰트는 독립된 3축이다
LaTeX2e의 NFSS(New Font Selection Scheme)에서 현재 텍스트 글꼴은 세 가지 독립적인 속성의 조합입니다. 패밀리는 기본 문자 형식이고 시리즈는 두께이며 모양은 문자의 기울어짐 또는 형태입니다. 핵심은 각각을 자체적으로 전환할 수 있으며 구성한다는 것입니다. 즉, 계열을 산세리프로 설정하고 시리즈를 굵게 설정하면 굵은 산세리프가 생성됩니다.
- 패밀리 — 로마자(세리프)
\textrm/\rmfamily, 산세리프\textsf/\sffamily, 타자기(고정 폭)\texttt/\ttfamily. - 시리즈 — 중간(기본 무게)
\textmd/\mdseries, 굵은 글씨\textbf/\bfseries. - 모양 — 수직(기본값)
\textup/\upshape, 기울임꼴\textit/\itshape, 기울어진\textsl/\slshape, 작은 대문자\textsc/\scshape.
한 축을 전환하면 다른 두 축은 그대로 유지됩니다. 이것이 NFSS의 핵심인 직교성입니다. 따라서 \textsf으로 산세리프를 켠 다음 그 안에 \textbf을 사용하면 굵게 표시되지만 *여전히 산세리프*가 됩니다. 시리즈는 실제로 "무게"와 "너비"를 하나의 축으로 결합하므로 응축된 면과 확장된 면도 모두 커버합니다. 2020년부터 LaTeX2e은 현재 시리즈와 요청된 시리즈를 지능적으로 병합합니다. 글꼴이 현재 압축되어 있고(c) 굵은 글꼴(b)을 요청하면 해당 글꼴이 존재할 때 굵은 글꼴(bc)을 시도합니다.
명령형과 선언형
각 스위치는 두 가지 형태로 제공됩니다. \text…으로 시작하는 명령 형식은 인수를 취하고 중괄호 안에 있는 내용에만 영향을 미칩니다. …family / …series / …shape으로 끝나는 선언 양식은 인수를 사용하지 않으며 해당 시점부터 포함 그룹({ }) 또는 환경이 끝날 때까지 유효합니다.
% 命令形:短い範囲に / Command form: for short spans
ここは \textbf{太字} で、ここは \textit{イタリック} です。
% 宣言形:グループで範囲を区切る / Declaration form: a group limits the scope
ここは普通。{\bfseries ここから先はずっと太字。} ここで元に戻る。
% 環境全体に効かせる / Apply to a whole environment
\begin{quote}
\itshape この引用は段落全体がイタリックになります。
\end{quote}좋은 경험 법칙: 몇 단어까지의 짧은 범위의 경우 명령 형식을 사용하세요 \textbf{...}; 전체 단락이나 환경의 경우 선언 형식을 사용하세요 \bfseries. 선언을 로컬에서만 적용하려면 그룹({\bfseries ...})으로 래핑해야 합니다. 그렇지 않으면 문서의 나머지 부분에 계속 적용됩니다.
명령 형식에는 조용하지만 실질적인 이점도 있습니다. 즉, 기울임꼴 교정을 삽입합니다(다음 섹션 참조). 아무것도 추가하지 않는 선언 형식은 중첩 및 대량 애플리케이션을 예측 가능하게 유지하므로 클래스 및 패키지 코드 내에서 선호됩니다.
| 열쇠 | 축/효과 | 명령 형식(짧은 범위) | 선언 양식(그룹을 통한 범위) |
|---|---|---|---|
roman | 패밀리: 로만(세리프) | \textrm{...} | {\rmfamily ...} |
sans | 계열: 산세리프체 | \textsf{...} | {\sffamily ...} |
tt | 제품군: 타자기(고정 폭) | \texttt{...} | {\ttfamily ...} |
bold | 시리즈: 굵은 글씨 | \textbf{...} | {\bfseries ...} |
medium | 시리즈: 중간(기본값) | \textmd{...} | {\mdseries ...} |
italic | 모양: 기울임체 | \textit{...} | {\itshape ...} |
slanted | 모양: 기울어짐 | \textsl{...} | {\slshape ...} |
smallcaps | 모양: 작은 모자 | \textsc{...} | {\scshape ...} |
reset | 모든 축을 기본값으로 재설정 | \textnormal{...} | {\normalfont ...} |
재설정 및 기울임꼴 수정
세 축을 모두 문서 기본값으로 한 번에 재설정하려면 \textnormal{...}(명령 형식) 또는 \normalfont(선언 형식)을 사용하세요. 예를 들어 산세리프 제목 안에 기본 글꼴로 된 단일 단어를 원할 때 유용합니다. 하나의 축만 재설정하려면 해당 축의 기본 명령인 \mdseries(중간 무게로 돌아가기), \upshape(다시 수직으로) 또는 \rmfamily(로마자로 돌아가기)을 사용하십시오.
기울임꼴 수정 \/은 기울어진 글자의 돌출부를 보충하기 위해 약간의 공백을 추가하므로 마지막 기울임꼴 문자가 뒤에 오는 수직 텍스트와 충돌하지 않습니다. 여기서 두 가지 형태가 갈라집니다. \textit{...}과 같은 명령 형식은 필요할 때 자동으로 수정 내용을 삽입합니다(다음 문자가 \nocorrlist에 있으면 이를 건너뜁니다. 기본적으로 마침표나 쉼표입니다). 선언 양식 \itshape은 아무 작업도 수행하지 않습니다. 따라서 경사 범위 끝에 \/을 직접 추가해야 합니다.
% 命令形:補正は自動 / Command form: correction is automatic
He was \textit{very} clever.
% 宣言形:末尾に \/ を手で入れる / Declaration form: add \/ by hand
He was {\itshape very\/} clever.
% 自動挿入を止めたいとき / To suppress the automatic correction
\textit{\nocorr text}강조하려면 \emph(\textit 아님)을 사용하세요.
"이것을 강조"하려는 경우 관용어는 모양을 수정하는 \textit이 아니라 의미를 전달하는 \emph{...}입니다. 요령은 \emph이 컨텍스트를 인식한다는 것입니다. 즉, 수직 본문 텍스트에서는 이탤릭체로 표시되지만 이미 기울임꼴로 표시된 텍스트 내에서 사용하면 눈에 띄도록 *다시 수직*으로 전환됩니다. 중첩된 경우 교대로 나타납니다. \emph{start \emph{middle} end}은 기울임꼴, 수직, 기울임꼴을 나타냅니다.
이는 LaTeX의 모양과 구조의 분리를 구현합니다. 본문에 *의미* "강조"만 쓰고 나중에 강조를 굵게 또는 색상으로 표시하려면 \emph의 정의를 한 곳에서(예: \DeclareTextFontCommand을 통해) 변경하면 모든 곳에 전파됩니다. 전용 페이지에서는 더 자세히 강조하고 있습니다.
피해야 할 이전 명령
이전 웹 게시물에서 두 글자 명령 \bf, \it, \rm, \sf, \tt, \sc, \sl을 볼 수 있지만 이는 LaTeX 2.09(1994년 이전)의 유물입니다. 여전히 작동하지만 사용하지 않습니다. 그 이유는 직교하지 않기 때문입니다. 각각은 크기를 제외한 *모든* 현재 글꼴 속성을 버리고 이를 재정의합니다.
그래서 그들은 결합을 거부합니다. {\bf\it text}은 \bf을 무시하고 이탤릭체로만 표시됩니다. {\it\bf text}은 \it을 무시하고 굵게 표시됩니다. 오래된 것과 새로운 것을 혼합하면 \textbf{\tt text}이 자동으로 \textbf을 삭제합니다. LaTeX2e은 이를 1994년에 축별 구성 가능한 명령(\bfseries, \itshape, \rmfamily 및 \textbf{...} 스타일 파트너로 대체했습니다. 새 코드에서는 항상 최신 명령을 사용하십시오.
축 결합: 작업 예제
3개의 축이 독립적이기 때문에 자유롭게 쌓을 수 있습니다. 아래 예에서는 산세리프체, 볼드체, 이탤릭체를 한꺼번에 적용합니다. 명령 형식을 중첩하거나 단순히 동일한 그룹에 선언을 나열합니다.
\documentclass{article}
\begin{document}
% 命令形を入れ子に / Nest the command forms
\textsf{\textbf{\textit{Bold sans-serif italic}}}
% 宣言形を同じグループに並べる(等価)/ Declarations in one group (equivalent)
{\sffamily\bfseries\itshape Bold sans-serif italic\/}
% 一語だけ標準書体へ戻す / Reset one word to the default font
{\sffamily 見出し調のテキストの中の \textnormal{標準} という語}
\end{document}일본어(和文) 텍스트는 약간 다르게 작동합니다. 패밀리 축에는 두 명의 구성원(mincho \textmc / \mcfamily 및 고딕 \textgt / \gtfamily이 있으며 이는 서양 로마자/산세리프와는 별도의 시스템입니다. 기본 일본어 글꼴에는 독립적인 굵은 계열이 없기 때문에 일본어 텍스트에 \textbf을 적용하면 서양 문자는 굵게 표시되지만 일본어는 고딕으로 렌더링됩니다(기본 동작). 가족전환(민초 ⇒ 고딕)을 통해 일본성을 강조하는 것은 서양의 무게감과 경사감과는 개념적으로 다른 전통적인 접근방식이다.
마무리 참고 사항: \textbf과 같은 상위 수준 명령은 내부적으로 NFSS 낮은 수준 명령으로 확장됩니다. — \fontfamily{...}, \fontseries{...}, \fontshape{...} 속성을 설정하고 \selectfont이 이를 커밋합니다. 모양 속성 값은 n(수직), it(기울임꼴), sl(기울기) 및 sc(작은 대문자)입니다. 이 레이어를 직접 터치하는 경우는 거의 없지만 특정 명명된 글꼴을 소환하는 방법입니다.
원고 작업 정책
논문이나 기술 문서에서 글꼴 명령을 작은 시각적 수정으로 분산할수록 원고를 유지 관리하기가 더 어려워집니다. 본문 텍스트에서 의미가 전달되는 위치에 대한 글꼴 명령을 유지하세요. 제목을 굵게 표시하고, 캡션을 더 작게 만들고, 용어를 일관되게 정의하는 등의 규칙은 산문 전반에 걸쳐 반복되는 \textbf 명령이 아니라 클래스, 패키지 또는 고유한 의미 매크로에 있어야 합니다.
- 강조는
\emph에 두세요. 나중에 모양이 바뀔 수 있도록 본문에 의미를 유지하세요. - 짧은 레이블에만 직접 스타일을 사용하십시오.
\textsf또는\texttt과 같은 명령은 모양 자체가 중요한 UI 이름, 키 이름 및 짧은 경고 레이블에 적합합니다. - 긴 범위에 대한 선언을 사용합니다. 전체 인용 또는 여백 메모의 경우 환경 시작 부분에
\itshape또는\small을 선언하고 그룹을 깔끔하게 닫습니다. - 기존 두 글자 명령을 혼합하지 마십시오. 공동 원고에서는
\bf또는\it을 최신\bfseries/\itshape또는\textbf/\textit로 바꾸십시오.
로그의 글꼴 경고 읽기
요청한 조합이 현재 글꼴에 없으면 LaTeX은 가까운 글꼴로 대체하고 계속 진행합니다. 그게 편리하지만 제출된 PDF에서는 "굵은 작은 대문자를 요청했는데 일반 굵은 글씨처럼 보입니다."라는 뜻이 될 수 있습니다. 로그에 Font shape ... undefined 또는 Font shape ... substituted이 표시되면 명령의 철자만 확인하지 마십시오. 선택한 글꼴에 실제로 해당 계열, 시리즈 및 모양이 있는지 확인하세요. 대체품이 허용되는 경우에도 PDF에서 이를 검사하고 원고 메모에 결정을 기록합니다.
- 최소한의 예시로 조합을 시도해 보세요. 원고에 흩뿌리기 전에 짧은 샘플로
\textsf{\textbf{...}}또는\textsc{...}을 검사해 보세요. - 대체를 무시하지 마십시오. 그대로 두면 경고로 인해 강조가 장마다 다르게 보일 수 있습니다. 글꼴을 변경하거나 요청한 모양을 단순화하세요.
- 반복되는 사용을 의미 매크로로 이동합니다. 용어, UI 이름 및 기타 반복 역할의 경우 산문에서 글꼴 전환을 반복하는 대신
\newcommand{\term}[1]{...}과 같은 명령에서 스타일을 수집합니다.