utf8 문자를 어떻게 얻을 수 있나요?

utf8 문자를 어떻게 얻을 수 있나요?

섹션에 대한 상호 참조를 기호로 만들고 싶지만 주어진 설명을 사용한 후 'utf8' 입력 인코딩에서 사용된 키보드 문자가 정의되지 않았다는 오류 보고를 받았습니다. 탈출구는 무엇일까요?

답변1

패키지를 사용하여 LaTeX(아래에 표준 TeX 엔진 포함)에서 utf8 인코딩 테스트를 조판하려고 하면 inputenc다음이 발생합니다.

  • LaTeX는 문서에 있는 문자에 따라 하나 이상이 될 수 있는 올바른 수의 8비트 문자를 읽어 utf8 문자를 구문 분석합니다.
  • 이렇게 하면 LaTeX에 특정 유니코드 번호가 포함된 유니코드 문자가 제공됩니다(일부 계산 후).00A1
  • 이제 LaTeX는 이 문자를 조판하려고 시도하지만 그렇게 하려면 유니코드 문자를 나타내는 문자 모양을 실제로 포함하는 글꼴(로드된)이 필요합니다.
  • LaTeX는 그 사실을 알아야 합니다.
  • LaTeX는 다음 형식의 상당히 많은 수의 선언을 통해 이에 대해 학습합니다 \DeclareUnicodeCharacter{00A1}{\textexclamdown}.
  • 이는 유니코드 숫자를 LaTeX 내부 문자 표현(LICR)으로 변환합니다.
  • 그러나 이 문자를 인쇄하는 데 사용할 수 있는 문자 모양이 없으면 이는 별로 도움이 되지 않습니다. 따라서 inputenc패키지는 이를 포함하는 글꼴이 로드된 유니코드 문자만 설정합니다.
  • T1예를 들어, LaTeX를 통해 인코딩된 글꼴을 로드하면 \usepackage[T1]{fontenc}내부적으로 LaTeX는 파일에 정의된 모든 선언을 로드합니다 t1enc.dfu. (설정된 모든 LaTeX 글꼴 인코딩에 해당하는 파일이 있습니다 .dfu.)
  • 그러나 유니코드에는 엄청난 수의 문자가 포함되므로 LaTeX에서 사용하는 글꼴 인코딩이 아닌 문자를 문서에 넣으면 이 유니코드 문자가 설정되지 않았다는 오류 메시지가 표시됩니다.

그렇다면 특정 문서에서 이 문제를 해결하려면 어떻게 해야 할까요?

  • 첫 번째 단계는 LaTeX가 알지 못하는 문자의 유니코드 번호를 식별하는 것입니다(이는 오류 메시지에 나타나야 합니다).
  • 조금 더 복잡한 두 번째 단계는 실제로 이 문자를 포함하는 TeX 글꼴이 있는지 확인하고 이 글꼴의 인코딩이 무엇인지 확인하는 것입니다. 여기에는 좋은 조언이 없지만 표준 LaTeX 글꼴 인코딩을 설명하는 일부 문서가 있습니다.
  • 또는 문서에 최소한 T1TS1인코딩을 추가하면 문제가 해결될 수 있습니다(일반적인 "서부" 문자인 경우).
  • 문자를 "가짜"로 만들 수도 있습니다. 예를 들어 어떤 종류의 하이픈(유니코드에는 여러 가지 다른 하이픈이 있음)이 있고 편집자가 LaTeX에서 알 수 없는 하이픈을 추가하는 경우 선언을 추가할 수 있습니다 \DeclareUnicodeCharacter. 존재하는 대체 문자를 포함하는 두 번째 인수를 사용합니다.

그렇지 않으면 유일한 대답은 다른 문자를 사용하거나 완전히 유니코드를 지원하고 기본적으로 큰 문자 집합이 있는 유니코드 글꼴에 액세스할 수 있는 TeX 기반 엔진을 사용하는 것뿐입니다.

이에 대한 보다 정교한 문서는 문서화된 소스 코드에서 찾을 수 있습니다. utf8ienc.pdf이는 LaTeX 배포판에 있거나 파일에서 생성될 수 있습니다 .dtx.

답변2

친구가 라틴 시에 관한 책을 조판하려고 하고 ō 및 oe(롱가그리고브레비스).

내가 찾아낸 트릭은 패키지에 담겨져 있었는데,newunicodechar.

속담

\usepackage{newunicodechar}
\newunicodechar{ō}{\={o}}
\newunicodechar{ŏ}{\u{o}}

하는 것과 똑같습니다

\DeclareUnicodeCharacter{014D}{\={o}}
\DeclareUnicodeCharacter{014F}{\u{o}}

그러나 유니코드 테이블을 검색하는 부담은 없습니다.

물론 대체 텍스트에 있는 내용이 실제로 로드 중인 글꼴에 의해 생성될 수 있는지 확인해야 합니다. 이는 "섹션 표시"의 경우일 수 있습니다.

또한보십시오문자를 인수로 취하고 활성화한 다음 \def하는 매크로입니다.

이 패키지를 사용하면 또 다른 이점이 있습니다. 문서 처리를 위해 XeLaTeX 또는 LuaLaTeX로 전환하고 싶다고 가정해 보겠습니다. 다음과 같은 문자는

관련 정보