I am not sure if I understand the question correctly. Perhaps what you want is that independently of the table contents, its bottom will always be in the same vertical position of the page. If this is the case, one possible solution would be to place the tabular material inside a TikZ \node
placed at an absolute position on the page and using the proper anchor.
In the following example the tabular bottom will always be in the same vertical position (3cm above the y-coordinate of current page.center
); the tabular was built using the tabularht
package. If more rows are added, the bottom of the tabular will preserve its vertical position:
\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}
After the edit to the original question, it seems that, after all. you can do without using tabular material; what you seem to need is some way to place elements at absolute positions of a page and in this case, you can use, for example, a simple TikZ
approach (other packages would also perform the same task, but sice you are using TikZ
already, I opted to use this approach); the key text width allows you to control the width of the node:
\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}

\documentclass[10pt,a4paper]{article}
\usepackage{tabu}
\begin{document}
\tabulinesep=3pt
\begin{tabu}{lp{5cm}}
a & a \\ \hline
b & inner table: \newline
\begin{tabu}{lX}
0: & descriptive text \\
1: & descriptive text \\
\end{tabu}%
\vspace*{8pt}
\par\noindent
Some longer text which will break into the next line.\\ \hline
c & c
\end{tabu}
\end{document}

Best Answer
You can add struts to the beginning and end of your columns as follows:
You can use LaTeX's own
\strut
command, or you can make your own customized struts as I've done above. By using two different style struts and the>
and<
modifiers for columns, you can control the spacing above the first line and after the last line in that column.By changing the height of the first strut and the depth of the second strut, you can finely control the spacing.
Technically, the optional argument to
\rule
is not the depth; it's a dimension by which the rule is raised or lowered. By using a negative value you are essentially setting the depth of the strut. Since the strut should not be visible, make sure the<width>
is set toOpt
.UPDATE
As noted in the comments below, the alignment can be off if the last column contains some short text. To get around this, use the
>
<
directives for both columns: