当我尝试在环境\vdots
中添加一个逃逸的字符串时,我有一个问题listing
。
代码如下:
\lstset{language=[Sharp]C,,basicstyle=\footnotesize, showspaces=false,showtabs=false,,breaklines=true,showstringspaces=false,breakatwhitespace=true,frame=trBL, escapeinside={(*@}{@*)}}
\begin{lstlisting}
private void Form1_Load(object sender, EventArgs e)
{
XDocument doc = XDocument.Load("XMLFile1.xml");
textBox1.Text = doc.Descendants("dos").Single().Value.Replace("\n","\r\n");
int val = textBox1.Lines.Count();
(*@{\center\vdots}@*)
XmlDocument doc2 = new XmlDocument();
doc2.Load("XMLFile1.xml");
textBox2.Text = doc2.GetElementsByTagName("dos")[0].InnerText;
}
\end{lstlisting}
答案1
您可以使用\raisebox
凭借其两个可选的参数将官方的高度和深度设置为零,以避免撕裂框架的额外垂直\centerline
间距\hfill <code> \hfill\null
。
\documentclass{article}
\usepackage{listings}
\usepackage{mathdots}
\begin{document}
\lstset{language=[Sharp]C,,basicstyle=\footnotesize, showspaces=false,showtabs=false,,breaklines=true,showstringspaces=false,breakatwhitespace=true,frame=trBL, escapeinside={(*@}{@*)}}
\begin{lstlisting}
private void Form1_Load(object sender, EventArgs e)
{
XDocument doc = XDocument.Load("XMLFile1.xml");
textBox1.Text = doc.Descendants("dos").Single().Value.Replace("\n","\r\n");
int val = textBox1.Lines.Count();
(*@\centerline{\raisebox{-1pt}[0pt][0pt]{$\vdots$}}@*)
XmlDocument doc2 = new XmlDocument();
doc2.Load("XMLFile1.xml");
textBox2.Text = doc2.GetElementsByTagName("dos")[0].InnerText;
}
\end{lstlisting}
\end{document}
(我删除了列表前面的空间,因为将将代码推到右侧)
答案2
不要使用\center
,这是错误使用。
您可以避开该符号,并确保它不太高。
\documentclass{article}
\usepackage{listings}
\usepackage{mathdots}
\begin{document}
\lstset{language=[Sharp]C,,basicstyle=\footnotesize, showspaces=false,showtabs=false,,breaklines=true,showstringspaces=false,breakatwhitespace=true,frame=trBL, escapeinside={(*@}{@*)}}
\begin{lstlisting}
private void Form1_Load(object sender, EventArgs e)
{
XDocument doc = XDocument.Load("XMLFile1.xml");
textBox1.Text = doc.Descendants("dos").Single().Value.Replace("\n","\r\n");
int val = textBox1.Lines.Count();
(*@\makebox[\linewidth][c]{$\smash{\vdots}$}@*)
XmlDocument doc2 = new XmlDocument();
doc2.Load("XMLFile1.xml");
textBox2.Text = doc2.GetElementsByTagName("dos")[0].InnerText;
}
\end{lstlisting}
答案3
请按如下方式使用:
(*@{\hspace*{3cm}\vdots}@*)