如何呈现带有可选择代码块缩进空格的 PDF?

如何呈现带有可选择代码块缩进空格的 PDF?

我正在尝试创建一个包含代码片段的 PDF,由于它们大部分都是 Python 格式,因此缩进很重要。我找到了 fancyvrb 包,它在 PDF 中看起来很棒,但我的问题是,当我选择并复制 PDF 中的文本时,它没有在每行中包含任何前导空格。

这是 PDF 的限制,还是我本地环境的限制?我尝试了许多不同的方法来生成 PDF(TeXstudio、使用 pandoc 将 Markdown 转换为 PDF、在 Libreoffice 中编写并导出为 PDF,甚至用空格替换制表符),使用所有这些方法,我都设法让 PDF 看起来不错,但它们都存在复制代码片段的问题。我希望能够从 PDF 中复制代码而无需重新格式化。感谢您的帮助。

尝试选择代码

下面是我为该图像渲染的 TeX 示例:

\documentclass[]{article}
\usepackage{fancyvrb}

%opening
\title{Report}
\author{vee}
\begin{document}
\maketitle
\section{Test}
asdf
\begin{Verbatim}
def test():
    print("hello")
\end{Verbatim}
\end{document}

如果我选择那里的代码片段,那么当我将其粘贴到编辑器中时,它不包含任何缩进:

def test():
print("hello")

相关内容