保持缩进和左对齐一致

保持缩进和左对齐一致

我需要重现与图片中类似的图表。我需要保持左对齐和缩进一致,水平线和垂直线也很重要。如果对此有任何建议,我将不胜感激,也许可以举一个展示主要思想的玩具示例。

提前非常感谢您。

乐

答案1

如果您尝试下面的代码,您将得到与您的示例非常相似的结果,虽然我可能误解了一些符号,但您会理解它的本质。

从您的问题来看,我认为您希望有一个标准程序来以一致的方式处理大型项目。

我会告诉你我的食谱,因为重要的是如何完成了。

1 这很明显:使用表格

2 在 Excel 中创建表格。(这很重要,不要直接使用 LaTeX 代码,稍后您将了解原因)。

3 使用 Excel2laTex 插件。 https://www.ctan.org/tex-archive/support/excel2latex

  1. 取消选中书签包和转换 $^_\ 选项

5 复制到剪贴板并将其粘贴到包含一组所需包的裸 LaTeX 文档中。

  1. 编译。

7 纠正错误或进行更改,然后转至 Excel 并返回至 LaTeX。这种方式可以快速获得反馈,而无需了解软件包的细节(大多数情况下)。

\documentclass{article}

\usepackage{multirow}   
\usepackage{bigstrut}       


\begin{document}
% Table generated by Excel2LaTeX from sheet 'Sheet1'
\begin{table}[htbp]
    \centering
    \caption{Add caption}
    \begin{tabular}{lrlrrl}
        (1)   &       & $P\rightarrow   Q$ &       &       & $\mathbf{P}$ \\
        (2)   &       & $ \rightharpoondown T$ &       &       & $\mathbf{P}$ \\
        (3)   &       & $Q \rightarrow T$ &       &       & $\mathbf{P}$ \\
        (4)   &       & $S\vee W\rightarrow  Q$ &       &       & $\mathbf{P}$ \\
        (5)   &       & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$P\vee (R\wedge S)$} &       & $\mathbf{H}$ \bigstrut[b]\\
        \cline{4-5}    (6)   &       & \multicolumn{1}{r|}{} & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$P$} & $\mathbf{H}$ \bigstrut\\
        \cline{5-5}    (7)   &       & \multicolumn{1}{r|}{} & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$Q$} & $\mathbf{I}\rightarrow 1, 6$ \bigstrut[t]\\
        &       & \multicolumn{1}{r|}{} &       &       &  \\
        (8)   &       & \multicolumn{1}{r|}{} & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$R\wedge  S$} & $\mathbf{H}$ \bigstrut[b]\\
        \cline{5-5}    (9)   &       & \multicolumn{1}{r|}{} & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$S$} & $\mathbf{H} \wedge 8$ \bigstrut[t]\\
        (10)  &       & \multicolumn{1}{r|}{} & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$S\vee  W$} & $\mathbf{I} \vee 9$ \\
        (11)  &       & \multicolumn{1}{r|}{} & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$Q$} & $\mathbf{E} \rightarrow 4, 10$ \\
        (12)  &       & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$Q$} &       & $\mathbf{E} \vee 5,7,11$ \\
        (13)  &       & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$T$} &       & $\mathbf{E} \rightarrow 3. 12$ \\
        (14)  &       & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$ \rightharpoondown T$} &       & $\mathbf{it}\; 2$ \\
        (15)  &       & $ \rightharpoondown(P\vee (R \wedge S))$ &       &       & $\mathbf{I} \rightarrow 5,13,14$ \\
    \end{tabular}%
    \label{tab:addlabel}%
\end{table}%
    
\end{document}

总共花费时间:30 分钟写表格,5 分钟获取结果。

我遗漏了一些错误,请尝试使用所述步骤自行更正,而不是编辑 LaTeX 代码。请在下面的更新中回答。

擅长 在此处输入图片描述

更新更正后的代码,使用相同的程序生成。

\documentclass{article}

\usepackage{multirow}   
\usepackage{bigstrut}   

\begin{document}
% Table generated by Excel2LaTeX from sheet 'correct'
\begin{table}[htbp]
\centering
\caption{Add caption}
\begin{tabular}{lrlrrl}
    (1)   &       & $P\rightarrow   Q$ &       &       & $\mathbf{P}$ \\
    (2)   &       & $ \neg T$ &       &       & $\mathbf{P}$ \\
    (3)   &       & $Q \rightarrow T$ &       &       & $\mathbf{P}$ \\
    (4)   &       & $S\vee W\rightarrow  Q$ &       &       & $\mathbf{P}$ \\
    (5)   &       & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$P\vee (R\wedge S)$} &       & $\mathbf{H}$ \bigstrut[b]\\
    \cline{4-5}    (6)   &       & \multicolumn{1}{r|}{} & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$P$} & $\mathbf{H}$ \bigstrut\\
    \cline{5-5}    (7)   &       & \multicolumn{1}{r|}{} & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$Q$} & $\mathbf{E}\rightarrow 1, 6$ \bigstrut[t]\\
    &       & \multicolumn{1}{r|}{} &       &       &  \\
    (8)   &       & \multicolumn{1}{r|}{} & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$R\wedge  S$} & $\mathbf{H}$ \bigstrut[b]\\
    \cline{5-5}    (9)   &       & \multicolumn{1}{r|}{} & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$S$} & $\mathbf{E} \wedge 8$ \bigstrut[t]\\
    (10)  &       & \multicolumn{1}{r|}{} & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$S\vee  W$} & $\mathbf{I} \vee 9$ \\
    (11)  &       & \multicolumn{1}{r|}{} & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$Q$} & $\mathbf{E} \rightarrow 4, 10$ \\
    (12)  &       & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$Q$} &       & $\mathbf{E} \vee 5,7,11$ \\
    (13)  &       & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$T$} &       & $\mathbf{E} \rightarrow 3, 12$ \\
    (14)  &       & \multicolumn{1}{r|}{} & \multicolumn{1}{l}{$ \neg T$} &       & $\mathbf{it} \; 2$ \\
    (15)  &       & $ \neg (P\vee (R \wedge S))$ &       &       & $\mathbf{I} \neg\; 5,13,14$ \\
\end{tabular}%
\label{tab:addlabel}%
\end{table}%        
\end{document}

答案2

第三和第四列似乎设置为固定宽度。

下面的代码设置表格没有列间距,在需要的地方手动添加(第一列和第二列之间,第二列和第三列之间)。

定义了一个辅助宏来简化我们需要垂直线的单元格的输入。我选择这个宏\bl的原因不明。

狭窄的空间\,是为了将术语稍微移离垂直线。

\documentclass{article}
\usepackage{amsmath}
\usepackage{array}


\begin{document}

\begin{flushleft}
\newcommand{\bl}[1]{\multicolumn{1}{|>{$}wl{6em}<{$}}{\,#1}} % ad hoc for the table
\renewcommand{\arraystretch}{1.2} % some more air to the table
\setlength{\tabcolsep}{0pt}

\begin{tabular}{
  r               % first column aligned on the right
  @{\hspace{3em}} % padding
  >{$}l<{$}       % left aligned math column
  @{\hspace{0.5em}}
  >{$}wl{6em}<{$} % left aligned math column (fixed width)
  >{$}wl{6em}<{$} % left aligned math column (fixed width)
  @{}
  l               % left aligned normal column
}
 (1) & P\to Q & & & \textbf{P} \\
 (2) & \lnot T & & & \textbf{P} \\
 (3) & Q\to T & & & \textbf{P} \\
 (4) & S\lor W \to Q & & & \textbf{P} \\
 (5) & & \bl{P\lor(R\land S)} & & \textbf{H} \\
\cline{3-4}
 (6) & & \bl{} & \bl{P} & \textbf{H} \\
\cline{4-4}
 (7) & & \bl{} & \bl{Q} & \textbf{E}$\to$ 1, 6 \\
     & & \bl{} \\
 (8) & & \bl{} & \bl{R\land S} & \textbf{H} \\
\cline{4-4}
 (9) & & \bl{} & \bl{S} & \textbf{E}$\land$ 8 \\
(10) & & \bl{} & \bl{S\lor W} & \textbf{I}$\lor$ 9 \\
(11) & & \bl{} & \bl{Q} & \textbf{E}$\to$ 4, 10 \\
(12) & & \bl{Q} & & \textbf{E}$\lor$ 5, 7, 11 \\
(13) & & \bl{T} & & \textbf{E}$\to$ 3, 12 \\
(14) & & \bl{\lnot T} & & \textbf{it} 12 \\
(15) & \lnot(P\lor(R\land S)) & & & \textbf{I}$\lnot$ 5, 13, 14
\end{tabular}
\end{flushleft}

\end{document}

不算简单,但也不算太难。

在此处输入图片描述

相关内容