GFS + 열거 문제

GFS + 열거 문제

두 개의 열거 환경을 중첩하려고 합니다. 두 번째는 첫 번째 환경 안에 있습니다. 두 번째 열거형을 (α'), (β'), (γ') 등으로 생성하는 xgreek 패키지를 사용하고 있습니다. 그러나 2개의 GFS 글꼴(Elpis & Heraklit)을 사용할 때 문제가 발생합니다. ' 열거형에서.

중첩된 열거형이 포함된 .tex 파일이 50개 이상 있기 때문에 자동 방식으로 수행하고 에 설명된 대로 모든 중첩된 열거형에 레이블을 추가할 필요가 없습니다.이 게시물.

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

MWE:

\documentclass[12pt]{article}

\usepackage{enumerate, enumitem, moreenum}
\usepackage{multicol}
\usepackage{fontspec,xgreek, polyglossia}
\defaultfontfeatures{Mapping=tex-text}
\setmainfont[Mapping=tex-text]{CMU Serif} 
\setdefaultlanguage{english}
\newfontfamily\myfontfirst{GFS Elpis}
\newfontfamily\myfontsecond{GFS Artemisia}
\newfontfamily\myfontthird{GFS Heraklit}

\begin{document} 
    
    \begin{multicols}{2}
    CMU Serif
    \begin{enumerate}
        \item 
        \begin{enumerate}
            \item 
            \item 
            \item
            \item 
            \item 
            \item 
        \end{enumerate}
        \item
    \end{enumerate}
    
    {\myfontfirst 
        GFS Elpis
        \begin{enumerate}
            \item 
                \begin{enumerate}
                    \item 
                    \item 
                    \item
                    \item 
                    \item 
                    \item 
                \end{enumerate}
            \item
        \end{enumerate}
    }
    \end{multicols}

    \begin{multicols}{2}
    {\myfontsecond 
        GFS Artemisia
        \begin{enumerate}
            \item 
            \begin{enumerate}
                \item 
                \item 
                \item
                \item 
                \item 
                \item 
            \end{enumerate}
            \item
        \end{enumerate}
    }
    
    {\myfontthird
        GFS Heraklit
        \begin{enumerate}
            \item 
            \begin{enumerate}
                \item 
                \item 
                \item
                \item 
                \item 
                \item 
            \end{enumerate}
            \item
        \end{enumerate}
    }   
    \end{multicols}
    
\end{document}

답변1

GFS Elpis 및 GFS Heraklit 글꼴에는 U+0374 GREEK NUMERAL SIGN에 대한 문자 모양이 없으며 실제로 다음과 같은 결과를 얻습니다.

Missing character: There is no ʹ in font GFS Elpis/OT:script=latn;language=dflt;!
Missing character: There is no ʹ in font GFS Heraklit-Regular/OT:script=latn;language=dflt;!

해당 글꼴이 사용 중일 때 두 번째 수준 열거의 각 항목에 대해.

글리프가 있는 글꼴을 사용하여 폴백을 제공할 수 있습니다. 아래 코드에서는 GFS Artemisia를 채택했습니다.

\documentclass[12pt]{article}

\usepackage{fontspec}
\usepackage{xgreek}
\usepackage{enumitem,moreenum}
\usepackage{multicol}

\setmainfont{CMU Serif} 
\newfontfamily\myfontfirst{GFS Elpis}
\newfontfamily\myfontsecond{GFS Artemisia}
\newfontfamily\myfontthird{GFS Heraklit}

\makeatletter
%%% avoid so many spurious warnings
\protected\def\anw@false{\protected\def\anw@print{}}
\protected\def\anw@true{\protected\def\anw@print{\numer@lsign}}
%%% provide a fall back for U+0374 GREEK NUMERAL SIGN
\protected\def\numer@lsign{\iffontchar\font`ʹ ʹ\else{\myfontsecond ʹ}\fi}
\makeatother

\begin{document} 
    
    \begin{multicols}{2}
    CMU Serif
    \begin{enumerate}
        \item 
        \begin{enumerate}
            \item 
            \item 
            \item
            \item 
            \item 
            \item 
        \end{enumerate}
        \item
    \end{enumerate}
    
    {\myfontfirst 
        GFS Elpis
        \begin{enumerate}
            \item 
                \begin{enumerate}
                    \item 
                    \item 
                    \item
                    \item 
                    \item 
                    \item 
                \end{enumerate}
            \item
        \end{enumerate}
    }
    \end{multicols}

    \begin{multicols}{2}
    {\myfontsecond 
        GFS Artemisia
        \begin{enumerate}
            \item 
            \begin{enumerate}
                \item 
                \item 
                \item
                \item 
                \item 
                \item 
            \end{enumerate}
            \item
        \end{enumerate}
    }
    
    {\myfontthird
        GFS Heraklit
        \begin{enumerate}
            \item 
            \begin{enumerate}
                \item 
                \item 
                \item
                \item 
                \item 
                \item 
            \end{enumerate}
            \item
        \end{enumerate}
    }   
    \end{multicols}
    
\end{document}

그건 그렇고, 서로 싸울 때 함께 enumerate로드 하지 마십시오. enumitem후자만 로드하십시오.

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

관련 정보