你好,我使用以下 LaTeX 输出 xml 格式的数据,但是每行前面没有空格。
\documentclass{minimal}
\usepackage{etex},
\begin{document}
\medskip
{\small\noindent
\fbox{\begin{minipage}{6cm}
<invoke operation="a3". . .>\\
\hspace{3mm}<Handler>\\
\ \ \ \ \ <operation="...." . . .>\\
\ \ <Handler>\\
</invoke>
\end{minipage}}
}
\medskip
\end{document}
输出如下:
但是,我希望输出这样的格式,因为每行都有一些空格对齐。
有人能帮我吗?
答案1
包裹listings
1可以帮到你,正如 Torbjørn T. 在评论中建议的那样。它是为排版代码而设计的。
\documentclass{article} \usepackage{listings} \lstset{language=XML,basicstyle=\ttfamily,breaklines=true} \begin{document} \begin{lstlisting} <invoke operation="a3" ...> <Handler> <operation="..." ...> <Handler> </invoke> \end{lstlisting} \end{document}
替代方案包括内置verbatim
环境,但它不能轻易换行(您必须手动中断它们,而不仅仅是设置breaklines=true
)。listings
还提供语法突出显示;它很容易配置,但如果您指定语言(如我上面所述),默认情况下会有非常基本的突出显示language=XML
。
\begin{lstlisting} <tag /> <!-- comment --> <![CDATA[foo]]> \end{lstlisting}
注意斜体
comment
。
脚注
- 我与它并无任何关联;我只是喜欢它。