항목별 라벨로 이미지 사용

항목별 라벨로 이미지 사용

친구의 논문을 도와주던 중 itemize에서 이상한 문제를 발견했습니다. 그녀는 항목별 라벨로 작은 이미지를 사용해야 했고 저는 를 사용하도록 제안했습니다 \item[\includegraphics{xx}]. 그러나 \includegraphics그림의 일부 매개변수(예: 크기)를 설정하기 위해 선택적 인수를 사용하면 컴파일이 실패한다는 사실을 발견했습니다 .

대신 하나의 인수만 사용하는 보조 명령을 생성하면 컴파일이 원활하게 진행됩니다.

왜 이런 일이 발생하는지 힌트를 줄 수 있는 사람이 있나요? 그리고 여기서 무슨 일이 일어나고 있는지 이해하기 위해 어디를 봐야 할까요? 매우 감사합니다!

여기 MWE에서는 example.png작업 디렉터리에 이미지가 필요합니다.

\documentclass{article}
\usepackage{graphicx}

\newcommand{\imagebullet}[1]{\includegraphics[width=0.5cm]{#1}}

\begin{document}
    \begin{itemize}
        \item[\imagebullet{example.png}] This works
        \item[\includegraphics[width=0.5cm]{example.png}] This does not!
    \end{itemize}
\end{document}

답변1

TeX는 중괄호처럼 대괄호 중첩을 추적하지 않습니다.

중괄호를 중첩할 때

{.... { .... } ....}
1     2      2     1

그러면 TeX는 어떤 쌍이 함께 속하는지 알 수 있습니다. 대괄호에서는 이런 일이 발생하지 않습니다. 여기서 코드는 단순히 다음 닫는 괄호를 찾습니다. 그래서 TeX는 다음과 같이 쌍을 이룰 것입니다.

\item[\includegraphics[width=0.5cm]{example.png}]
     1                2           1

그리고 당신의 명령이 중단됩니다. 이를 방지하려면 중괄호 그룹에서 내부 브래킷을 숨길 수 있습니다.

\item[{\includegraphics[width=0.5cm]{example.png}}]
     1{                2           2             }1   

답변2

\imagebullet모든 항목에 동일한 이미지를 사용하므로 원하는 대로 매크로를 수정 한 후 [\imagebullet].

\documentclass{article}
\usepackage{graphicx}

\newcommand{\imagebullet}{$\vcenter{\hbox{\includegraphics[width=0.5cm]{example-image}}}$}

\begin{document}
    \begin{itemize}
        \item[\imagebullet] This works
        \item[\imagebullet] This also works 
    \end{itemize}
\end{document}

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

관련 정보