매크로가 포함된 \import 및 \includegraphics: 매크로 정의 시 로컬 경로 유지

매크로가 포함된 \import 및 \includegraphics: 매크로 정의 시 로컬 경로 유지

나는 이 문제를 해결하기 위해 며칠 동안 , , , 등 \def의 다양한 조합을 시도해 보았습니다 .\edef\noexpand\expandafter

및 을 /tmp/module/포함하는 모듈이 있다고 가정해 보겠습니다 . 나는 무엇보다도 상대 경로를 사용하여 이 하위 모듈 내에서 이미지를 가져오는 데 사용하는 매크로를 정의합니다.module.teximage.pngmodule.tex\includegraphics

% module.tex
\newcommand{\myQuizHeader}[1]{
  Quiz #1
  \includegraphics[width=1.5in]{image.png}
}

그런 다음 기본 문서에서 또는 을 수행한 \import다음 매크로를 \subimport사용해 봅니다 \myQuizHeader.

% main.tex
\documentclass[11pt,letterpaper]{article}
\usepackage{graphicx}
\usepackage{import}

\begin{document}
  \import{/tmp/module/}{module.tex}
  \myQuizHeader{27}
\end{document}

import는 내부에 있는 동안 모듈과 관련된 파일과 이미지를 찾기 위해 모듈 경로 앞에 올바르게 추가하지만 module.tex모듈을 떠날 때 해당 경로가 제거되므로 해당 모듈에 정의된 매크로가 더 이상 올바르게 작동하지 않습니다. 기본 파일에서 호출하면 \myQuizHeader{27}이미지를 찾을 수 없습니다.

이 문제를 해결하는 올바른 방법은 무엇입니까? \Ginput@path변수를 모듈 내의 로컬 변수에 저장하여 트릭을 시도해 보았지만 결국 지옥 \edef에 빠졌습니다 \noexpand.

정말 감사합니다!

관련 정보