纸张(A4)上的表格被切断

纸张(A4)上的表格被切断

我使用 tabular 创建了一个宽表。虽然它在 pdf 上显示正常,但当我在 A4 上打印时,表的右侧被截断了。知道为什么会发生这种情况吗?我知道我可以用 tabular 简单地减小列宽,但直到打印时我才知道文本是否超出了边距。

 \documentclass[12pt, oneside, landspace, leqno]{report}
\usepackage[doublespacing]{setspace}
\usepackage[top=.8in, left=0.5in]{geometry}%bottom=.8in,left=1in,right=2.54cm]{geometry} % customized margins
\geometry{headsep = 25pt}
\usepackage{apacite}
\usepackage{tabularx}
\usepackage{tikz}
\usepackage{float}
\usepackage{booktabs}
\newgeometry{left=0.5cm,bottom=0.3cm,top=0.2cm}
\begin{document}
\begin{center}
\begin{table}[H]
{\footnotesize
\begin{tabular}{ p{4cm} p{4cm} p{4cm} p{7cm}}
\toprule
Part 1&Part 2&Part 3&Part 4\\ \midrule
Bei et al., 2006 & E2 - Positive NB; PELL - classifiers SVM, NB, C4.5 & LingSpam ;PU1 & E2 94.20\% accuracy, PDB 90.10\%, PERL 88.29\% \\
Yus \& Xuin, 2005 & NB; NMN; SVM; RVM &Spam Ensemble; Babletext & SVM - 92\%, 94.5\%; NN 81.3\%, 82.7\%; NB - 93.7\%, 95.8\% \\
\bottomrule
\end{tabular}
\caption{demo table}
}
\end{table}
\end{center}
\end{document}

答案1

我猜,您实际上喜欢将文档设置为纵向,而只将非常大的表格设置为横向。您展示的示例中的表格实际上并没有那么大(在我看来是必要的)。

根据您的序言,您计划使用tabularx表格。有了它,您已经可以在推入的表格中使用它,以确保它不会在右侧突出文本宽度:

\documentclass[12pt, oneside, a4paper, leqno]{report}
    \usepackage[doublespacing]{setspace}
    \usepackage[margin=1in,showframe]{geometry}% <-- changed to usual margins
\geometry{headsep = 25pt}
    \usepackage{booktabs, tabularx}
\newcolumntype{L}{>{\raggedright\arraybackslash
                    \let\\\newline}X}
    \usepackage{siunitx}% <-- added for units

    \begin{document}
\begin{table}[h]
\footnotesize
\begin{tabularx}{\textwidth}{lLLL}
    \toprule
Part 1  &   Part 2  &   Part 3  &   Part 4                      
    \tabularnewline\midrule
Bei et al., 2006 
        &   E2 - Positive NB; \\
            PELL - classifiers SVM, NB, C4.5
                    &   LingSpam; PU1
                                &   E2   \SI{94.20}{\%} accuracy,\\ 
                                    PDB  \SI{90.10}{\%}, \\
                                    PERL \SI{88.29}{\%}   
    \tabularnewline\addlinespace
Yus \& Xuin, 2005 
        &   NB; NMN; SVM; RVM
            &   Spam Ensemble; Babletext
                        &   SVM - \SI{92}{\%}, \SI{94.5}{\%}; \\
                            NN  - \SI{81.3}{\%}, \SI{82.7}{\%}; \\
                            NB  - \SI{93.7}{\%}, \SI{95.8}{\%} 
    \tabularnewline\bottomrule
\end{tabularx}
    \caption{demo table}
\end{table}
    \end{document}

这使:

在此处输入图片描述

如果您确实需要宽表,那么您可以将表方向更改为横向。例如,也可以使用rotating包及其sidewaystable环境来完成此操作:

\documentclass[12pt, oneside, a4paper, leqno]{report}
    \usepackage[doublespacing]{setspace}
    \usepackage[margin=1in,show frame]{geometry}
\geometry{headsep = 25pt}
    \usepackage{booktabs, tabularx}
\newcolumntype{L}{>{\raggedright\arraybackslash
                    \let\\\newline}X}
    \usepackage{siunitx}
    \usepackage{rotating}

    \begin{document}
\begin{sidewaystable}
\footnotesize
\begin{tabularx}{\textwidth}{lLLL}
    \toprule
Part 1  &   Part 2  &   Part 3  &   Part 4                      
    \tabularnewline\midrule
Bei et al., 2006 
        &   E2 - Positive NB; \\
            PELL - classifiers SVM, NB, C4.5
                    &   LingSpam; PU1
                                &   E2   \SI{94.20}{\%} accuracy,\\ 
                                    PDB  \SI{90.10}{\%}, \\
                                    PERL \SI{88.29}{\%}   
    \tabularnewline\addlinespace
Yus \& Xuin, 2005 
        &   NB; NMN; SVM; RVM
            &   Spam Ensemble; Babletext
                        &   SVM - \SI{92}{\%}, \SI{94.5}{\%}; \\
                            NN  - \SI{81.3}{\%}, \SI{82.7}{\%}; \\
                            NB  - \SI{93.7}{\%}, \SI{95.8}{\%} 
    \tabularnewline\bottomrule
\end{tabularx}
    \caption{demo table}
\end{sidewaystable}
    \end{document}

这使:

在此处输入图片描述

在这两个例子中,我删除了 MWE 序言中与表设计无关的所有包。对于列类型,我将其用于l第一列,并L用于其他列。L在序言中定义。

希望这个答案可以为您提供一些关于如何设计表格的额外想法。

答案2

默认布局为美国信纸,与 A4 不匹配。为确保获得 A4,请添加a4paper到课程选项或选项中几何学我会使用:

\documentclass[12pt, oneside, a4paper, landscape, leqno]{report}

在这里,我landscape也纠正了拼写错误。请注意,编译时检查控制台输出有时会告诉您有用的信息,例如“全局选项”landspace被忽略了。

正如 David 所说,将浮点数放入环境中是没有意义的center。(tablefigure是浮点数的例子。)您可能希望\centering在环境内部使用。

\documentclass[12pt, oneside, a4paper, landscape, leqno]{report}
\usepackage[doublespacing]{setspace}
\usepackage[top=.8in, left=0.5in]{geometry}%bottom=.8in,left=1in,right=2.54cm]{geometry} % customized margins
\geometry{headsep = 25pt}
\usepackage{apacite}
\usepackage{tabularx}
\usepackage{tikz}
\usepackage{float}
\usepackage{booktabs}
\newgeometry{left=0.5cm,bottom=0.3cm,top=0.2cm}
\begin{document}
\begin{table}[H]
  \centering
  \footnotesize
  \begin{tabular}{ p{4cm} p{4cm} p{4cm} p{7cm}}
    \toprule
    Part 1&Part 2&Part 3&Part 4\\ \midrule
    once upon a time in biblical times the Romans were &there were a few & green apples & and crazy apes\\
    once upon a time &there were a few & green apples & and crazy apes filled the Amazonian forests\\
    \bottomrule
  \end{tabular}
  \caption{demo table}
\end{table}
\end{document}

这确实使用了横向 A4,但您的布局仍然存在一些令人困惑的地方。您有:

\usepackage[top=.8in, left=0.5in]{geometry}%bottom=.8in,left=1in,right=2.54cm]{geometry} % 自定义边距 \geometry{headsep = 25pt} ... \newgeometry{left=0.5cm,bottom=0.3cm,top=0.2cm}

但您到底想要什么?有时在文档开始后更改页面布局是有意义的,但在文档开始之前更改它有什么意义呢?原始设置(大部分,但有些变化和不可预测)会被覆盖,只有(成功的)新设置才会产生任何效果。

我还想说,这些是非常小边距。我认为我可以使用的任何打印机都无法适应这些。结果是,即使理论上内容适合纸张,打印时也会被切断。

以下是上面的结果

边际利润

增加showframe我们提供的选项几何学,我们可以看到布局:

边缘边缘显露出来

这可能不是您想要的......

相关内容