lstlistings の動作がおかしい

lstlistings の動作がおかしい

Java ソースコードがいくつかあり、それを LaTex で表示したいです。

\lstset{language=Java}
\begin{lstlisting}
    IntentFileter intentfilter = new IntentFilter();
    intentfilter.addAction("com.anguanjia.action.download.START_DOWNLOAD");
    intentfilter.addAction("com.anguanjia.action.download.DOWNLOAD_SUCCESS");
    g = new blm(this, null);
    m.registerReceiver(g, intentfilter);
\end{lstlisting}

しかし、出力は確かに醜いです: ここに画像の説明を入力してください

私が何か間違ったことをしたのでしょうか、それともこうあるべきなのでしょうか?

答え1

これは、先延ばしと美化への出発点となるかもしれません。

\documentclass{article}
\usepackage{listings}
\usepackage{xcolor}

\lstset{language=Java,
    basicstyle=\footnotesize\ttfamily,
    commentstyle=\ttfamily\itshape\color{gray},
    stringstyle=\ttfamily,
    showstringspaces=false,
    breaklines=true,
    frameround=ffff,
    frame=single,
    rulecolor=\color{black},
    tabsize=1,
    keywordstyle=\color{red}\bfseries,
    columns=fullflexible,
    morekeywords={public, class}
}

\begin{document}
\begin{lstlisting}
    IntentFileter intentfilter = new IntentFilter();
    intentfilter.addAction("com.anguanjia.action.download.START_DOWNLOAD");
    intentfilter.addAction("com.anguanjia.action.download.DOWNLOAD_SUCCESS");
    g = new blm(this, null);
    m.registerReceiver(g, intentfilter);
\end{lstlisting}
\end{document}

ここに画像の説明を入力してください

内部のディレクティブを使用してさらにカスタマイズできます\lstset。詳細については、マニュアルを参照してください。極端に美しくしたい場合は、オプションを使用して をlistings使用できます。ドキュメントでを検索してください。tcoloboxlistings onlytcblistingtcolorbox

関連情報