表格对于页面来说太宽

表格对于页面来说太宽

我正在尝试将一个相当大的表格放入我的页面。对于页面来说,它太宽了。我尝试了类似

\begin{longtable}{| p{0.14\textwidth} | p{0.14\textwidth} | 
p{0.14\textwidth} | p{0.14\textwidth} | p{0.14\textwidth} | 
p{0.14\textwidth} | p{0.14\textwidth} |}

因为我有七列。

我现在遇到的一个问题是,当我使用时scrartcl,注释空间也包含在内\textwidth,但我当然希望保持在正常限制内。

另外,我已经在使用 footnotesize,但它不会分隔单词 --> 如果单词太长,则会将部分单词写在下一栏中。

我现在需要一种方法,使表格适合“正常”页面宽度(如图所示showframe),并且添加换行符或分隔单词,以避免写入下一列。

我没有发布最小的例子,因为我对所有可能的解决方案都持开放态度,(但它应该使用像 longtable 之类的东西,如果可能的话,调整相对于的列大小\textwidth)。
(如果看起来有点混乱,请见谅)

\begin{footnotesize}
\begin{center}
  \begin{longtable}{| p{0.14\textwidth} | p{0.14\textwidth} |
  p{0.14\textwidth} | p{0.14\textwidth} | p{0.14\textwidth} | 
  p{0.14\textwidth} | p{0.14\textwidth} |}
    \hline 
  \textbf{Variable} & \textbf{Kurzbezeichnung} & \textbf{Frage} & \textbf{type} & \textbf{value label} & \textbf{Range} & \textbf{missing value}\\
  \hline
  \endhead % all the lines above this will be repeated on every page
  ffhrwoggbgbgfieh & fefgogergeroigregb & fhoergregre & fhoerghergie & herogheggire & hgieghrgri & ngjreoigehrero\\
  \hline
  \caption{Alle Variablen von der Dokumentation aus dem Codebuch.}
  \label{tab:VarDoku}
  \end{longtable}
\end{center}
\end{footnotesize}

答案1

“Kurzbezeichnung” 根本无法容纳在如此窄的宽度中,所以我将其缩写为“KB”。

\documentclass{article}
\usepackage{longtable,calc,array}

\newlength\alicewidth

\begin{document}

\begingroup\footnotesize
\setlength{\alicewidth}{\textwidth/7-2\tabcolsep-8\arrayrulewidth/7}
\begin{longtable}{|*{7}{>{\raggedright\arraybackslash}p{\alicewidth}|}}
\hline
\textbf{Variable} & \textbf{KB} & \textbf{Frage} &
  \textbf{type} & \textbf{value label} & \textbf{Range} & \textbf{missing value}\\
\hline
\endhead % all the lines above this will be repeated on every page

ffhrwo ggbgbg fieh & fefgo gerge roigr egb & fhoerg regre & fhoerg hergie &
 herogh eggire & hgieg hrgri & ngjreoi gehrero\\

\hline
\caption{Alle Variablen von der Dokumentation aus dem Codebuch.\label{tab:VarDoku}}
\end{longtable}
\endgroup

\end{document}

在此处输入图片描述

答案2

我会使用结合了和ltablex功能的包,并使所有列标题具有通用格式。此外,表格标题通常放在longtabletabularxmakecell多于表格,特别是在多页表格的情况下,为了方便读者:

\documentclass[a4paper]{scrartcl}
\usepackage[utf8x]{inputenc}
\usepackage{ucs}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{makeidx}
\usepackage{graphicx}
\usepackage{caption, ltablex, makecell}%
\captionsetup{font=footnotesize, labelfont=sc}
\renewcommand\theadfont{\footnotesize\bfseries}
\usepackage{showframe} %
\renewcommand\ShowFrameLinethickness{0.3pt}
\renewcommand{\tabularxcolumn}[1]{>{\footnotesize\arraybackslash}p{#1}}

\begin{document}

\
\keepXColumns
\begin{tabularx}{\linewidth}{|*{7}{ X|}}
  \caption{Alle Variablen von der Dokumentation aus dem Codebuch.}\medskip
  \label{tab:VarDoku}\\
  \hline \thead{Variable} & \thead{Kurzbe- & & & & & \\zeichnung} & \thead{Frage} & \thead{Type} & \thead{Value\\ label} & \thead{Range} & \thead{Missing\\ value}\\
  \hline
  \endfirsthead
  \hline
  \thead{Variable} & \thead{Kurzbe- & & & & & \\zeichnung} & \thead{Frage} & \thead{type} & \thead{value\\ label} & \thead{Range} & \thead{missing\\ value}\\
  \hline
  \endhead % all the lines above this will be repeated on every page
  ffhrwogg bgbgfieh & fefgogerge roigregb & fhoergregre & fhoerghergie & herogheggire & hgieghrgri & ngjreoigeh rero \\

  \hline
\end{tabularx}

\end{document} 

在此处输入图片描述

相关内容