我想做类似的事情
\uppercase{\input{filename}}
这样文件中的文本filename
就以大写形式打印。
(上面的命令抱怨FILENAME.tex
不存在,显然\uppercase
是在\input
消耗之前应用的。)
答案1
您可以加载文件catchfile
然后应用\MakeUppercase
:
\begin{filecontents*}{\jobname-touc.tex}
This will be printed uppercase
\end{filecontents*}
\documentclass{article}
\usepackage{catchfile}
\newcommand{\ucinput}[1]{%
\CatchFileDef{\ucinputtemp}{#1}{}%
\MakeUppercase{\ucinputtemp}%
}
\begin{document}
Some text and \ucinput{\jobname-touc}
\end{document}
请注意,filecontents*
环境只是为了方便;任何文件都可以以这种方式使用。但输入文件中的文本有几个限制。一行就足够了。