我正在制作一份关于我编写的代码的报告。我想将页面分成两列,这样左边是代码,右边是注释、描述性内容非代码) 文本在右侧。
我不要希望整个文档都采用这种布局。
我还想有一条垂直线将这两列分开。
对我来说,重要的是我希望代码列比文本列占用更多的空间。例如,代码列宽度应该是文本列宽度的两倍。
我在网上搜索了很长时间,但找不到合适的解决方案。
我尝试了以下方法:
\usepackage{multicol}
\setlength{\columnsep}{1cm}
\setlength{\columnseprule}{1pt}
\def\columnseprulecolor{\color{black}}
\begin{document}
\begin{multicols}{2}
text..
\end{multicols}
\end{document}
但是它似乎无法找到为每列指定两种不同列宽的方法。让我感到困扰的是,我无法精确地指定哪些文本应该放在哪一列,它只是在到达页面底部时自动将其拆分,这意味着我有时会在右列上看到代码。
有人能帮我解决这个问题吗?我真的非常需要任何解决方案。谢谢!
答案1
minipage
如果您不需要分页符(您在问题中没有提到这是一项要求),那么简单的解决方案可能更适合您的情况,否则您可以查看paracol
Mico 在评论中提到的包。
\documentclass{article}
\usepackage[margin=1.5in,showframe]{geometry}
\usepackage{lipsum}
\begin{document}
\lipsum[1-5]\clearpage
\noindent
\begin{minipage}[t]{0.6\textwidth}
\lipsum*[1-2]
\end{minipage}%
\hfill
\vrule
\hfill
\begin{minipage}[t]{0.3\textwidth}
\lipsum*[1]
\end{minipage}
\clearpage
\lipsum[1-5]
\newpage
\end{document}
这样,您可以在左栏中放置任何您喜欢的内容(在您的情况下为代码),并在右侧放置描述性文本。