라텍스 라벨링에 따른 PDF 페이지의 그림

라텍스 라벨링에 따른 PDF 페이지의 그림

내 라텍스에는 이름이 모두 다른 수십 개의 인물이 있습니다. 나는 그것들을 단일 PDF 파일에 넣고 \includegraphics[page="label3"]{foo}대신에 같은 것을 통해 거기에서 각 그림을 호출하고 싶습니다 \includegraphics[page=3]{foo}. 즉, [모든 그림을 포함하는 이 단일 PDF 파일 생성 시 할당된] 적절한 레이블 지정에 따라 PDF에서 그림을 호출하고 싶습니다.

답변1

페이지 번호로 확장되는 매크로에 대한 레이블을 정의하여 이를 수행할 수 있습니다. 먼저 사용자 정의 매크로를 사용하여 여러 페이지로 구성된 PDF를 만든 다음 다른 정의를 사용하여 레이블 목록을 만들었습니다.

여기서는 이해하기 어렵기 때문에 일부 코드는 다음과 같습니다.

.tex다음 내용만 포함하는 파일을 만듭니다 .

% filelist.tex
\myimagelist{some label}{some path/pdffile1}
\myimagelist{some other label}{some path/pdffile2}
% ....

여러 페이지로 구성된 문서를 만들려면 다음 문서를 사용하십시오.

% allpdfs.tex
\documentclass{article}
\usepackage{pdfpages}
\newcommand{\myimagelist}[2]{\includepdf[fitpaper=true]{#2}}

\begin{document}
\input{filelist}
\end{document}

이렇게 하면 모든(단일 페이지) PDF가 결과 PDF의 페이지로 배치되며 모든 페이지는 여전히 원본 크기를 유지합니다.

실제 문서에서는 다음과 같이 보일 수 있습니다.

\documentclass{book}
\usepackage{graphicx}
\newcommand{\mylabel}[1]{\csname mylabel #1\endcsname}
\newcounter{mycounter}
\newcommand{\myimagelist}[2]{%
  \stepcounter{mycounter}%
  \expandafter\edef\csname mylabel #1\endcsname{\arabic{mycounter}}%
}
\input{filelist}

\begin{document}

\includegraphics[page=\mylabel{some label}]{allpdfs}

or use:

\newcommand{\imagebylabel}[2][]{\includegraphics[page=\mylabel{#2},#1]{allpdfs}}

\imagebylabel{some other label}

\end{document}

현재 LaTeX가 설치되지 않은 가족용 PC에 앉아 있기 때문에 코드를 테스트할 수는 없지만 원리 아이디어는 얻으실 수 있습니다.

관련 정보