캐릭터 결합을 방지하는 방법은 무엇입니까?

캐릭터 결합을 방지하는 방법은 무엇입니까?

"EB Garamond" 글꼴은 ʿ문자와 앞 글자를 결합한 글꼴입니다. 다음 문서를 고려하십시오.

\documentclass{article}
\usepackage{fontspec}
\setmainfont{EB Garamond}
\begin{document}

   aʿ bʿ cʿ dʿ eʿ fʿ gʿ hʿ iʿ jʿ kʿ lʿ mʿ nʿ oʿ pʿ qʿ rʿ sʿ tʿ uʿ vʿ wʿ xʿ yʿ zʿ

\end{document}

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

ʿ빗질 (MODIFIER LETTER LEFT HALF RING)과 앞의 문자가 겹치는 것을 방지하려면 어떻게 해야 합니까 ? (위 이미지에서는 b,d,i,j올바르게 렌더링된 이미지만 표시됩니다.)

업데이트30개 이상 테스트한 결과 이 ​​글꼴이 이 문제가 있는 유일한 글꼴입니다. 불행하게도 이는 많은 유니코드 문자가 포함된 문서에만 적합한 형식입니다. ◕︵◕

답변1

필요한 경우 일시적인 로컬 수정으로 문자 앞에 kern을 넣어 이전 문자에서 숨길 수 있습니다.

  a\kern0ptʿ

결합하지 않을 것입니다.

답변2

죄송합니다. 이것은 실수로 제가 방금 업로드한 v0.015b에서 수정되었습니다.https://bitbucket.org/georgd/eb-garamond/downloads

답변3

XeTeX만의 "솔루션"은 맵 파일을 사용하는 것입니다. half-ring.mapXeTeX에게 활자 세트의 수정자 반링 앞에 머리카락 공간을 삽입하도록 지시하는 파일을 만듭니다.

LHSName "Modifier Half Ring"
RHSName "UNICODE"
pass(Unicode)

U+02BF <> U+200A U+02BF;

그런 다음 (TeX Live에 포함되어야 함)로 컴파일하고 teckit_compile글꼴 명령을 \setmainfont[Mapping=half-ring]{EB Garamond}.

XeTeX는 현재 글꼴당 하나의 매핑 파일만 적용할 수 있으므로 다른 매핑 파일(또는 글꼴 옵션)을 사용하는 경우 Ligature=TeX위 파일에서 해당 매핑을 복제해야 합니다.

답변4

LuaLaTeX로 전환해도 괜찮다면,미코다가오는selnolig패키지(GitHub)는 당신의 친구입니다. 실제로는 의도하지 않은 합자를 전역적으로 방지하기 위한 것이지만 이 경우에도 사용할 수 있습니다. 언어 옵션 없이 로드하면 다른 내용은 변경되지 않습니다.

\documentclass{article}
\usepackage{fontspec}
    \setmainfont{EB Garamond}

\usepackage{selnolig}
    \nolig{ʿ}{|ʿ}
\begin{document}

   aʿ bʿ cʿ dʿ eʿ fʿ gʿ hʿ iʿ jʿ kʿ lʿ mʿ nʿ oʿ pʿ qʿ rʿ sʿ tʿ uʿ vʿ wʿ xʿ yʿ zʿ

\end{document}

산출

더 많은 배경 지식을 보려면selnolig 다음을 살펴보세요.활자체 합자 억제를 자동화하는 새로운 패키지 selnolig.

다른 각도에서 문제 보기: 저는 이 특정 유니코드 문자에 대해 아무것도 모릅니다. 그러나 EB Garamond가 여기서 실제로 뭔가 잘못된 일을 하고 이것이 유일한 글꼴인 경우 다음 위치에 버그 보고서를 제출해야 합니다.개발 사이트.

관련 정보