У меня есть система, где a .tex
генерируется из программы. Окончательный .tex
файл имеет (упрощенную) структуру, подобную этой:
\newcommand{\PlotFrame}[1]{%
\begin{frame}
\frametitle{...}
...
...
\includegraphics{#1}
\end{frame}}
\PlotFrame{File_1.png}
\PlotFrame{File_2.png}
...
\PlotFrame{File_n.png}
Теперь - при компиляции этого с pdflatex
ним жалуется на \PlotFrame{File_n.png}
операторы; из-за подчеркивания. К сожалению, у меня нет контроля над именами файлов. Есть предложения, как я могу сохранить текущую структуру с командой \PlotFrame{}
- и позволить ей принимать аргументы с подчеркиванием?
Я бысильнопредпочитаю не избегать этого \_
.
решение1
Вы можете определить дополнительный макрос следующим образом:
\documentclass{article}
\usepackage{graphicx}
\newcommand{\PlotFrameB}[1]{%
\includegraphics{#1}\endgroup}
\def\PlotFrame{\begingroup
\catcode`\_=12
\PlotFrameB}
\begin{document}
\PlotFrame{File_1.png}
\PlotFrame{File_2.png}
...
\PlotFrame{File_n.png}
\[ a_b \]
\end{document}
Это временно изменит код _
в аргументе.