当表格单元格具有高度时对齐表格单元格的底部

当表格单元格具有高度时对齐表格单元格的底部

我目前有一个可以设置行高的功能,所以我可以控制它。它看起来是这样的:

\begin{tabular}{ @{} p{1.60in} l @{} }
\hspace{-0.8in}\textbf{Fundacion Tecnologica Centroamericana} & \textbf{13/09/2012}\vspace{-0.06in} \\[0.3in]
\multicolumn{2}{ l }{\hspace{-0.8in}\textbf{Ciudad}\vspace{-0.07in}} \\
\multicolumn{2}{ l }{\hspace{-1.15in}\textbf{NIT}} \\
\end{tabular}

我以前[]设置过高度。这样效果很好,但行当然比文本高,这就是我想要的,因为随着更多文本的填充,我希望它在单元格中“向上”移动,而不是将其下方的所有内容向下推。

那么我该如何告诉它垂直对齐该行的行底部?

编辑(更新):

好的,这就是我目前所拥有的,我从tabularht下面开始。它允许我定位所有东西,太棒了!问题是我想要的部分仍然向下填充,我需要它向上填充,这样它才能留在我放置它的地方。

\begin{tikzpicture}[remember picture,overlay]
\node [anchor=south] at ( $ (current page.center) + (-1.5cm,3.15cm) $ )
{
    \begin{tabularht}{3cm}{ @{} b{2.35in} @{} }
        \textbf{Fundacion Tecnologica centroamericana} \\[0.05in]\hline
    \end{tabularht}
};
\end{tikzpicture}

\begin{tikzpicture}[remember picture,overlay]
\node [anchor=south] at ( $ (current page.center) + (3cm,3cm) $ )
{
    \begin{tabularht}{3cm}{ @{} l @{} }
        \textbf{13/09/2012}
    \end{tabularht}
};
\end{tikzpicture}

以下图片向您展示了我正在做的事情:

在此处输入图片描述

在此处输入图片描述

看看它是如何向下推并覆盖其下方文本的。我需要它向上推并保持在部分nombre。例如,如果该nombre部分只有两个单词并且只需要第一行,它应该保持在行中,但如果它有 3 或 4 个单词并且推到第二行,则其他单词应该向上推而不是向下推到所有内容之上。感谢大家的帮助。

答案1

我不确定我是否正确理解了这个问题。也许你想要的是,无论表格内容如何,​​其底部始终位于页面的同一垂直位置。如果是这种情况,一种可能的解决方案是将表格材料放置在页面\node绝对位置的 TikZ 中,并使用适当的锚点。

在以下示例中,表格底部将始终处于相同的垂直位置( y 坐标上方 3 厘米current page.center);表格是使用tabularht包。如果添加更多行,表格底部将保留其垂直位置:

\documentclass{article}
\usepackage{tabularht}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}

\begin{tikzpicture}[remember picture,overlay]
\node [anchor=south] at ( $ (current page.center) + (0,3cm) $ )
{
\begin{tabularht}{3cm}{ @{} p{1.60in} l @{} }
\hspace{-0.8in}\textbf{Fundacion Tecnologica Centroamericana} & \textbf{13/09/2012}\vspace{-0.06in} \\[0.3in]
\multicolumn{2}{ l }{\hspace{-0.8in}\textbf{Ciudad}\vspace{-0.07in}} \\
\multicolumn{2}{ l }{\hspace{-1.15in}\textbf{NIT}} \\
\end{tabularht}
};
\end{tikzpicture}

\end{document}

在对原始问题进行编辑之后,看来,毕竟。您可以不使用表格材料;您似乎需要某种方法将元素放置在页面的绝对位置,在这种情况下,您可以使用例如一种简单的TikZ方法(其他包也会执行相同的任务,但由于您TikZ已经在使用,我选择使用这种方法);关键文本宽度允许您控制节点的宽度:

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc}

\begin{document}

\begin{tikzpicture}[remember picture,overlay]
\node [anchor=south west,text width=2.35in,align=left] at ( $ (current page.center) + (-3cm,3.15cm) $ )
{
        \textbf{Fundaci\'on Tecnol\'ogica Centroamericana}
};
\node [anchor=south] at ( $ (current page.center) + (4cm,3.15cm) $ )
{
        \textbf{13/09/2012}
};
\node [anchor=south west] at ( $ (current page.center) + (-3cm,2.65cm) $ )
{
        \textbf{Ciudad}
};
\node [anchor=south west] at ( $ (current page.center) + (-3.5cm,2.15cm) $ )
{
        \textbf{1953012-9}
};
\draw ( $ (current page.center) + (-3.5cm,2.05cm) $ ) -- +(8cm,0);
\end{tikzpicture}

\end{document}

在此处输入图片描述

答案2

您可能指的是带有p列的单元格。它与列的第一行到下一个单元格对齐。如果已加载包l,您可以使用b而不是 来更改它。parray

\documentclass{article}
\usepackage{array}
\begin{document}
\bfseries
\begin{tabular}{p{1.6in}l}
  Fundacion Tecnologica Centroamericana &
  13/09/2012 \\
\end{tabular}
\par
\bigskip
\begin{tabular}{b{1.6in}l}
  Fundacion Tecnologica Centroamericana &
  13/09/2012 \\
\end{tabular}
\end{document}

比较 p 列与 b 列

顺便说一句,\hspaces 和\vspaces 看起来很奇怪。它们的用途是什么?

更新:下面添加了一行:

\documentclass{article}
\usepackage{array}
\begin{document}
\bfseries
\begin{tabular}{b{1.6in}l}
  Fundacion Tecnologica Centroamericana &
  13/09/2012 \\
\hline
  Ciudad
\end{tabular}
\end{document}

有底线的结果

相关内容