
나는 LuaTeX가 그리스 문자를 따를 때 계속되는 문자(예: 곡절 부호, U+0302)를 잘못 렌더링하는 것으로 나타났습니다. 저는 특히 이것이 고정 폭 글꼴과 함께 작동하도록 하는 데 관심이 있습니다(코드 블록에 나타나기 때문입니다).
\documentclass{article}
\usepackage{fontspec}
\setmonofont{DejaVu Sans Mono}
\begin{document}
\texttt{â \quad b̂ \quad ĉ \quad α̂ \quad β̂ \quad γ̂ \quad α̇ \quad β̇ \quad γ̇}
\end{document}
여러 글꼴을 사용해 보았으나 작동하는 글꼴을 찾을 수 없었습니다. 이것이 일반적인 글꼴 문제인지 아니면 TeX에만 국한된 문제인지 궁금합니다.
답변1
답변2
이는 글꼴과 관련이 있습니다. 유니코드 글꼴에서 악센트는 대부분 소위 앵커를 사용하여 배치됩니다. 모든 문자에는 글꼴 파일에 표시된 특수 위치가 있으므로 표시된 악센트 위치가 이 "앵커"와 정렬됩니다. 글꼴 디자이너는 이러한 앵커를 그리스 문자에 추가하지 않았습니다.
물론 앵커를 직접 추가하여 이 문제를 해결할 수 있지만, 드문 경우이고 작은 문자에만 필요한 경우 악센트를 수동으로 배치할 수 있습니다. 대부분의 경우 \llap
다음 문자 위에 악센트를 배치하면 되지만 때로는 \raise
그렇게 해야 하는 경우도 있습니다. 예를 들어:
\documentclass{article}
\usepackage{fontspec}
\setmonofont{DejaVuSansMono.ttf}
\begin{document}
\texttt{â \quad b̂ \quad ĉ \quad \llap{̂}α \quad \raisebox{2pt}{\llap{̂}}β \quad \llap{̂}γ \quad \llap{̇}α \quad \raisebox{2pt}{\llap{̇}}β \quad \llap{̇}γ}
\end{document}