我试图在代码周围放置一个框架,但框架的尺寸不对。我该如何设置?
\begin{lstlisting}[language=C++,frame=single,tabsize=2,showspaces=false,showstringspaces=false,
keywordstyle=\color{blue},morekeywords={QStringList,QDate,QString,QIODevice},commentstyle=\color{CadetBlue},caption={Zistenie, či sme v daný deň, už záznam o rýchlosti uložili}]
QStringList lines;
//ziskaj aktualny datum
QDate date = QDate::currentDate();
//preved ho na retazec
QString dateString = date.toString("dd.MM.");
if (speed_file.open(QIODevice::ReadOnly)) {
if (speed_file.size() != 0) {
while (!out.atEnd()) {
//nacitaj cely subor po riadkoch
lines.append(out.readLine());
}
out.flush();
speed_file.close();
//uloz posledny riadok
lastLine = lines[lines.size() - 1];
if (dateString.compare(lastLine.mid(lastLine.indexOf("->") + 2, -1)) == 0) {
//prepíšeme pôvodný záznam o rýchlosti
}
\end{lstlisting}
这就是结果
答案1
使用breaklines=true
:
\documentclass{article}
\usepackage[svgnames]{xcolor}
\usepackage{listings}
\begin{document}
\begin{lstlisting}[
language=C++,
frame=single,
tabsize=2,
showspaces=false,
showstringspaces=false,
keywordstyle=\color{blue},
morekeywords={QStringList,QDate,QString,QIODevice},
commentstyle=\color{CadetBlue},
caption={Zistenie, či sme v daný deň, už záznam o rýchlosti uložili},
breaklines=true
]
QStringList lines;
//ziskaj aktualny datum
QDate date = QDate::currentDate();
//preved ho na retazec
QString dateString = date.toString("dd.MM.");
if (speed_file.open(QIODevice::ReadOnly)) {
if (speed_file.size() != 0) {
while (!out.atEnd()) {
//nacitaj cely subor po riadkoch
lines.append(out.readLine());
}
out.flush();
speed_file.close();
//uloz posledny riadok
lastLine = lines[lines.size() - 1];
if (dateString.compare(lastLine.mid(lastLine.indexOf("->") + 2, -1)) == 0) {
//prepíšeme pôvodný záznam o rýchlosti
}
\end{lstlisting}
\end{document}