表の幅を線の幅と正確に設定

表の幅を線の幅と正確に設定

周囲のテキストとまったく同じ幅の表を作成しようとしています。

このコマンドで\resizebox{\linewidth}{!}{..table..}問題なく動作するはずです。ただし、テーブルの幅がまだ小さすぎます。

ここに画像の説明を入力してください

\documentclass{scrartcl} 
\usepackage{graphicx}
\usepackage[table]{xcolor}
\setlength{\parindent}{0pt}

\usepackage[
  top=0.600cm, 
  bottom=0.600cm,
  left=0.600cm, 
  right=0.600cm]
  {geometry}


\begin{document}
bla blub blaaa bla blub blaaabla blub blaaa bla blub blaaa bla blub blaaa bla blub blaaaa
bla blub blaaa bla blub blaaabla blub blaaa bla blub blaaa bla blub blaaa bla blub blaaaa
bla blub blaaa bla blub blaaabla blub blaaa bla blub blaaa bla blub blaaa bla blub blaaaa
bla blub blaaa bla blub blaaabla blub blaaa bla blub blaaa bla blub blaaa bla blub


\resizebox{\linewidth}{!}{
\begin{tabular}{|l|l|l|l|}
  \hline
  test entry & test entry & test entry & test entry \\
  test entry & test entry & test entry & test entry \\
  test entry & test entry & test entry & test entry \\
  \hline
\end{tabular}
}

\end{document}

答え1

あなたには 2 つの良い選択肢と (おそらく) 1 つのひどい選択肢があると思います。

  • 環境を利用してtabular*

  • tabularx環境(またはそれに近いものtabulary)を使用する

  • 基本tabular環境を使用し、 を使用してスケールアップ (またはスケールダウン) します\resizebox

結果は以下のとおりです(最初の水平線はテキストブロックの幅を示すためだけのものです。遺体4 つのテーブルはすべて同一であり、つまりレイアウトのみが異なります):

ここに画像の説明を入力してください

使用されている方法が\resizeboxまったくひどいものであると私が考える理由がおわかりでしょうか?

\documentclass{scrartcl} 
\usepackage{graphicx} % for '\resizebox` macro
\usepackage{tabularx} % for 'tabularx' environment
\setlength{\parindent}{0pt}
\usepackage[margin=0.6cm]{geometry}
\newcommand\TestTable{% define body of test table
  \hline
  test entry & test entry & test entry & test entry \\
  test entry & test entry & test entry & test entry \\
  test entry & test entry & test entry & test entry \\
  \hline}
\begin{document}
\hrule

\subsubsection*{Unscaled}

\begin{tabular}{llll}
\TestTable
\end{tabular}

\subsubsection*{Using \texttt{tabular*}}

\begin{tabular*}{\textwidth}{l@{\extracolsep{\fill}}lll}
\TestTable
\end{tabular*}

\subsubsection*{Using \texttt{tabularx}}

\begin{tabularx}{\textwidth}{XXXX}
\TestTable
\end{tabularx}

\subsubsection*{Scaled with \texttt{\textbackslash resizebox}}

\resizebox{\linewidth}{!}{%
\begin{tabular}{llll}
\TestTable
\end{tabular}}

\end{document}

関連情報