横向列表和纵向标题

横向列表和纵向标题

我正在尝试将一些横向模式的代码文件包含到纵向模式的文档中。我使用

\usepackage{lscape}

\usepackage{listings}

到目前为止一切顺利。当开始新的部分时,问题就出现了。标题以纵向模式显示(没问题!),然后是空白页。在下一页上出现代码。是否可以将纵向模式标题与横向模式代码合并在一页上?下面是一个小例子

\documentclass[12pt,a4paper,leqno]{book}
\usepackage[english]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{listings}
\usepackage{lscape}

\begin{document}
\section*{This is a section}
\begin{landscape}
\begin{lstlisting}
    and here comes the code
\end{lstlisting}
\end{landscape}
\end{document}

答案1

您可以在章节标题后添加一个带有(短)列表的旋转框。我的答案使用包tcolorbox来完成这项工作。框的给定值width是旋转框的高度。显然,宽度/高度必须足够小才能适合页面内部。如果您希望列表继续到下一页,此解决方案就不够了。列表的任何选项都可以放在键内listing options

\documentclass[12pt,a4paper,leqno]{book}
\usepackage[english]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[listings,skins]{tcolorbox}

\begin{document}
\section*{This is a section}

\begin{tcblisting}{width=19cm,listing only,blank,tikz={rotate=90},
  listing options={basicstyle=\ttfamily}}
and here comes the code
\end{tcblisting}

\end{document}

在此处输入图片描述

相关内容