黄金比例表

黄金比例表

我想创建一个包含两列的表格,这些表格遵循黄金比例. 表格的宽度应该等于\textwidth相应类的宽度。

以下是示例图片:

在此处输入图片描述

但是它不应该使用 960px,而应该使用完整的文本宽度。

编辑:

由于图像不太清晰,我需要明确我的要求。我希望两列之间留出一点空间,但这些空间不会包含在黄金比例的计算中。例如,如果页面宽度为 1000px,两列之间的空间为 40px,则黄金比例应从 960px 开始计算。此外,我不想在列的左侧和右侧以及列内留有任何填充。

答案1

以下示例取自手册tabularx包裹,只是宽度设置为 ,使得w1/w2=golden ratiow1+w2=2。有关详细信息,请参阅手册。请注意,包lipsum和命令\lipsum[2]用于提供一些虚拟文本。

\documentclass{article}

\usepackage{tabularx}
\usepackage{lipsum}

\begin{document}

\noindent
\begin{tabularx}{\textwidth}{@{}>{\hsize=1.23607\hsize}X@{}>{\hsize=0.76393\hsize}X@{}}
\lipsum[4] & \lipsum[2] 
\end{tabularx}

\end{document}

编辑:按照OP的规定,我@{}向表的列规范添加了3次,以完全删除水平填充。

答案2

可以使用tabu它提供的机制在列声明中给出分数:

\documentclass{book}
\usepackage{tabu}

\begin{document}


\noindent\begin{tabu} to \textwidth{|X[0.618]|X[0.382]|}
long 61.8 \% & short 38.2\% \\
\end{tabu}


\end{document}

答案3

定义一个新的长度,减去\tabcolsep,然后使用该长度作为计算的基础:

\documentclass{article}

\begin{document}

\newlength{\mytabwidth}
\setlength{\mytabwidth}{\textwidth}
\addtolength{\mytabwidth}{-\tabcolsep}

% display the new table width
\the\mytabwidth

\begin{tabular}{|@{}p{0.618\mytabwidth}|p{0.382\mytabwidth}@{}|}
 \hline
 a \hfill a  & b \hfill b \\
 \hline
\end{tabular}
\end{document}

相关内容