我正在尝试格式化一个宽度约为段落文本 3/4 的表格。我尝试使用 tabular 来实现这一点,但它存在一些问题。首先,默认表格超出了我文档的边距。其次,表格中的间距太大,而且太宽。
有人知道如何控制宽度,使其约为段落宽度的 3/4 吗?此外,如何强调/斜体整个表格?
谢谢!
\documentclass[letterpaper]{ltxdoc}
\usepackage[left=3cm, right=3cm]{geometry}
\usepackage{lipsum}
\setlength{\parskip}{1em}
\usepackage[T1]{fontenc}
\begin{document}
\lipsum
\begin{center}
\begin{tabular}{ c c c c c }
<ARGUMENT> & $\equiv$ & <PROP\_PREMISE\_MAJOR> & <PROP\_PREMISE\_MINOR> & <PROP\_CONCL>
\end{tabular}
\end{center}
\end{document}
答案1
您可以使用表格,但 0.75linewidth
对于您的五列来说太窄了。您必须拆分单词、减小字体大小或增加表格长度(或组合):
\documentclass[letterpaper]{ltxdoc}
\usepackage[left=3cm, right=3cm]{geometry}
\usepackage{lipsum, tabulary}
\setlength{\parskip}{1em}
\usepackage[T1]{fontenc}
\begin{document}
\lipsum
\begin{center}
\begin{tabulary}{0.75\linewidth}{CCCCC}
<ARGUMENT> & $\equiv$ & <PROP\ \_PREMISE\ \_MAJOR> & <PROP\ \_PREMISE\ \_MINOR> & <PROP\ \_CONCL>
\end{tabulary}
\end{center}
\end{document}
带有\footnotesize
更宽的表格:
\documentclass[letterpaper]{ltxdoc}
\usepackage[left=3cm, right=3cm]{geometry}
\usepackage{lipsum, tabulary}
\setlength{\parskip}{1em}
\usepackage[T1]{fontenc}
\begin{document}
\lipsum
{\centering\footnotesize %put the table in a group
\begin{tabulary}{\linewidth}{@{}CCCCC@{}}
<ARGUMENT> & $\equiv$ & <PROP\_PREMISE\_MAJOR> & <PROP\_PREMISE\_MINOR> & <PROP\_CONCL>
\end{tabulary}
\end{center}
}
\end{document}
答案2
这是一个使用listings
包的解决方案(基于https://tex.stackexchange.com/a/149718/189932):
\documentclass{article}
\usepackage[margin=1in]{geometry}
\usepackage{listings}% http://ctan.org/pkg/listings
\lstset{
basicstyle=\ttfamily,
mathescape
}
\begin{document}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras sit amet convallis tortor. Etiam consequat diam in iaculis sagittis. Praesent vel scelerisque ex.
\begin{lstlisting}
<ARGUMENT> $\equiv$ <PROP_PREMISE1> <PROP_PREMISE2> <PROP_CONCL>
<ARGUMENT> $\equiv$ <PROP_PREMISE2> <PROP_PREMISE1> <PROP_CONCL>
\end{lstlisting}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras sit amet convallis tortor. Etiam consequat diam in iaculis sagittis. Praesent vel scelerisque ex.
\begin{lstlisting}
class Stack {
char* v;
int top;
int max_size;
public:
\end{lstlisting}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras sit amet convallis tortor. Etiam consequat diam in iaculis sagittis. Praesent vel scelerisque ex.
\end{document}
编辑:自从这个答案发布以来,问题已经发生了很大的变化,因此这个答案可能不再相关。
答案3
您的表格比文本宽。请尝试将字体大小减小\small
至\tabcolsep
2pt:
\documentclass[letterpaper]{ltxdoc}
\usepackage[left=3cm, right=3cm]{geometry}
\setlength{\parskip}{1em}
\usepackage[T1]{fontenc}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\begin{center}
\small
\setlength\tabcolsep{2pt}
\begin{tabular}{@{} c c c c c @{}}
<ARGUMENT> & $\equiv$ & <PROP\_PREMISE\_MAJOR> & <PROP\_PREMISE\_MINOR> & <PROP\_CONCL>
\end{tabular}
\end{center}
\end{document}
但是,你对原始问题做了大量修改,因此第一个答案(其中包含原始问题的解决方案)与编辑无关。你最好问一个新问题...