LaTeX의 글꼴 인코딩

LaTeX의 글꼴 인코딩

나는 한동안 LaTeX를 사용해 왔으며 글꼴 인코딩에 대한 많은 토론을 읽었습니다.

어떤 사람들은 T1 글꼴을 추가하여 사용하라고 제안하고 \usepackage[T1]{fontenc}, 다른 사람들은 아무것도 추가하지 말라고 제안하고, 다른 사람들은 T1패키지에 추가로 사용할 것을 제안 ae하고, 다른 사람들은 이것이 더 이상 사용되지 않으며 대신 다른 글꼴을 사용해야 한다고 말합니다.

매우 혼란스럽습니다. 문제를 잘 설명하고 문제를 해결하는 업데이트된 리소스가 있습니까?

내 경험상 아무 것도 추가하면 제대로 작동하지 않지만 때로는 굵은 작은 대문자와 같은 추가 문자 세트가 필요할 때가 있습니다. 이 경우 T1 인코딩을 사용할 수 있지만 품질이 좋지 않습니다. ae또는 패키지를 사용하면 모든 것이 해결되는 것 같습니다 lmodern. 실제로 무슨 일이 일어나고 있으며 실제로 어떻게 해야 합니까?

추신: 이전에 이런 질문을 드려서 죄송합니다. 이에 대해 많은 논의가 있었지만 확실한 답변을 얻고자 포스팅을 올립니다.

PPS: 현재 저는 latex+ dvips+ 를 사용하고 있습니다 ps2pdf. pdflatex가능하다면 사용하는 것을 선호 하지만 다른 사람과 함께 작업하기 때문에 이것이 항상 가능한 것은 아닙니다.

답변1

기본 규칙은 다음과 같습니다. \usepackage[T1]{fontenc}문서에서 를 사용하여 더 나은 결과를 얻으려면 시도해 보세요.

설명: 영어 텍스트를 작성할 때 아마도 이 줄 없이도 지나갈 수 있으며 대부분의 상황에서 어떤 차이/어려움도 경험하지 못할 것입니다.

Knuth는 TeX를 소개했을 때 'Computer Modern'이라는 글꼴과 함께 출시했습니다. 이 글꼴에는 매우 제한된 문자 집합만 있습니다(현재의 OpenType 글꼴과 비교). 예를 들어 'ö' 및 'ü'와 같은 문자는 존재하지 않았습니다. 이러한 문자를 사용하는 언어를 조판하지 않으면 아무런 해가 없습니다. 하지만 렌더링해야 하는 순간 'o' 또는 'u' 위에 두 개의 점 '¨'을 결합하면 도움이 될 수 있습니다. 이를 위한 TeX 프리미티브가 있습니다: \accent. 이는 허용되지 않는 하이픈 연결을 비활성화하는 부작용이 있습니다.

그리하여 어느 날 TeX 사용자들은 대부분의 유럽 언어를 렌더링할 수 있는 글꼴을 인코딩하는 방법(T1 인코딩)에 대한 합의를 내놓았습니다. 이 인코딩은 사용자가 'ö' 또는 'ü'를 요청할 때 DVI 또는 PDF 파일에 넣을 코드를 알려줍니다. 이제 이러한 문자는 더 이상 두 개의 문자 모양으로 구성될 필요가 없으므로 하이픈 연결이 끊어지지 않습니다.

이제 이런 재미있는 캐릭터가 없다면 왜 T1을 고민해야 할까요? LaTeX용 글꼴을 준비할 때 글꼴 메트릭 파일( )을 만들어야 합니다 tfm. T1이 요즘 가장 많이 사용되는 인코딩이기 때문에(확실히 유럽에서는) 일부 사람들은 더 이상 T1이 아닌 인코딩을 사용하지 않으므로 이전 인코딩과 기본 OT1인코딩에서는 글꼴을 사용하지 못할 수도 있습니다.

그러나 Computer Modern을 고수하는 경우 더 나은 렌더링 결과를 제공하는 PostScript 변형은 OT1 인코딩에서만 사용할 수 있으므로 이전 인코딩을 유지하고 T1을 사용하지 않을 수 있습니다. T1으로 인코딩된 Computer Modern(특수 문자가 포함된 단어에 하이픈이 필요할 때 사용해야 함)의 경우 패키지를 사용 ae하거나 글꼴을 cm-super로 변경할 수 있습니다.~ 아니다인코딩을 로드 ae하고 T1으로 변경합니다. 하지만 그렇게 하고 싶지는 않습니다.) 저는 여러 가지 형태(PostScript Type 1, OpenType 글꼴)로 제공되는 'Latin Modern'이라는 Computer Modern 대체품을 사용할 것을 강력히 제안합니다. 로 활성화하세요 \usepackage{lmodern}.

답변2

대안XeLaTeX

OP는 LaTeX질문 제목에 명시적으로 이름을 지정합니다. .XeLaTeXLaTeX​여기서 언급하는 것이 도움이 될 것이라고 생각했습니다. 나는 프랑스어를 성공적으로 조판하기 위해 한동안 이 방법을 사용해 왔습니다. 프리앰블의 다음 코드 부분은 XeLaTeX호출 여부를 확인하고 이에 따라 프로그램을 로드합니다.

아래 코드에서는 서문에 삽입하기 위해 공개 도메인 글꼴을 로드합니다 Libertine. 이것은 단지 예시일 뿐입니다. 이 경우 명령 옵션을 사용하여 글꼴을 설정하는 것은 매우 지루하므로 글꼴을 더 쉽게 설정할 수 있도록 setmainfont명명된 특정 패키지가 생성되었습니다.libertine

\usepackage[oldstyle]{libertine}% public domain font % alternative to \setmainfont line commented out below
\usepackage{ifxetex}% load different packages with/without XeLaTex
\ifxetex
    \usepackage{fontspec}% provides \setmainfont
    %\setmainfont[Numbers=OldStyle,Ligatures=Common,Mapping=tex-text]{Linux Libertine O}% public domain font % or use the libertine package instead
\else  % packages below are not needed with utf8 based engines
    \usepackage[utf8]{inputenc}
    \usepackage[T1]{fontenc}
    \usepackage{lmodern} 
\fi%

얼마전에 찾아보니 괜찮은 조합인 것 같았습니다. (틀렸다면 전문가님들 지적 부탁드립니다.) 나는 XeLaTeX전문가도 아니고, 그것이 내 프랑스어 텍스트에 많은 도움이 되었다는 것을 알게 되었고 최근에 그것을 채택했습니다.

관련 정보