传递带下划线的文件名

传递带下划线的文件名

我创建了一个自定义命令,如果存在则包含图像,如果不存在则写入缺失的文件文本。问题是,如果我在文件名或路径中使用下划线,则无法正确打印路径。

\documentclass[a4paper, 10pt]{report}

\usepackage[utf8]{inputenc}
\usepackage[export]{adjustbox}

\newcommand{\includegraphicsmaybe}[2]{
    \IfFileExists{#2}
        {\includegraphics[valign=c, width=#1]{\detokenize{#2}}}
        {\fbox{\parbox[c][#1][c]{#1}{\center \textbf{File not found}\\ \detokenize{#2}} }}}

\begin{document}
\centering
\includegraphicsmaybe{0.4 \textwidth}{example-image}
\includegraphicsmaybe{0.4 \textwidth}{something.png}\\[1cm]
\includegraphicsmaybe{0.4 \textwidth}{something_1.jpg}
\includegraphicsmaybe{0.4 \textwidth}{something_1.png}

\end{document}

结果

我该如何解决这个问题?

答案1

使用\usepackage[T1]{fontenc}或使用\ttfamily排版文件名。

_OT1 字体在插槽中没有_,除打字机等宽字体的特殊情况外。

相关内容