Perhaps it is simpler to use a single tabular. And some \smash
magic.
\documentclass{article}
\usepackage{multirow}
\usepackage{setspace}
\usepackage{array}
\begin{document}
\scriptsize
\begin{tabular}[t]{@{}l@{}@{}l@{}@{}l@{ }p{2cm}@{}p{2.5cm}@{}}
Definition of & Definition & Definition and & market risk & found in funds\\
Definition of & Definition & Definition and & market options & found in changes of \\
Dynamic & Validation & Validation of & market options & found in funds \\
of & Definition & Definition and & & \\
Definition& Validation & Validation of & & \\
Definition of & Definition & Definition and & & \\
of Dynamic & Validation & Validation of & & \\
Dynamic & Validation & Validation of &
\multicolumn{2}{@{}l@{}}{\smash{\parbox[b]{4.5cm}{\tiny
To compensate for that, add 5 the following that it cannot
just use since they do not want the add they the following that
it cannot find where they went}}} \\
\end{tabular}
\end{document}
I just added an intercolumn space between the original left and right tables. Also I removed the \spacing
and \endspacing
commands which seem to cause the tiny text to shift a bit towards the bottom.
Or, with two tables as in your original code (but I think one should put some struts in the rows to be sure they will have the same height):
\documentclass{article}
\usepackage{multirow}
\usepackage{setspace}
\usepackage{array}
\begin{document}
\scriptsize
\begin{tabular}[t]{ll}
\begin{tabular}[t]{@{}l@{}@{}l@{}@{}l@{}}
Definition of & Definition & Definition and \\
Definition of & Definition & Definition and \\
Dynamic & Validation & Validation of \\
of & Definition & Definition and \\
Definition& Validation & Validation of \\
Definition of & Definition & Definition and \\
of Dynamic & Validation & Validation of \\
Dynamic & Validation & Validation of \\
\end{tabular}
&
\begin{tabular}[t]{@{}p{2cm}@{}p{2.5cm}@{}}
market risk & found in funds \\
market options & found in changes of \\
market options & found in funds \\
\\
\\ \\ \\
\multicolumn{2}{@{}l@{}}{\smash{\parbox[b]{4.5cm}{\tiny
To compensate for that, add 5 the following that it cannot
just use since they do not want the add they the following that
it cannot find where they went }}}
\end{tabular}
\end{tabular}
\end{document}
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}

Best Answer
A fundamental concept for understanding box placement is that of reference point. Each box has one, and also other items define one.
What TeX processes when typesetting are lists of items. You're mainly interested in vertical lists, where TeX just piles up horizontal boxes and vertical space items (plus other things that are not so relevant here). Between hboxes some glue (vertical spacing) can be inserted automatically by TeX to ensure equidistance between the reference points of these.
What's the reference point of an hbox? It's just the same: every box (or character inside) has one and TeX usually puts together these boxes so that their reference points are on the same horizontal line. However some of them may be shifted vertically: this is the case of the box that results from
whose reference point lies midway from the top to the bottom of the typeset tabular.
If a rule (or an image) is not shifted (which requires manual intervention by the user) its reference point is the lower left corner.
The reference point of a
\vbox
is the one of the last item inside it. It follows that saying\vbox{\vbox{...}}
is just the same as\vbox{...}
.Your first example
The reference points of the two boxes are on the same horizontal line (remember that the "tabular box" has its reference point in the middle).
Your second example
The reference points of the two boxes are on the same horizontal line:
can be reduced to
and in the
\vbox
the last item is a spacing item, that defines as reference point its bottom.Your third example
Again the boxes are aligned with respect to their reference points:
is equivalent to
because the enclosing boxes do not do anything that changes the reference point position. The boxes contain rules, whose reference point is the lower left corner.
How to get automatically bottom alignment
If you say
(notice the optional argument
[b]
to\begin{tabular}
) the tabular will have its reference point at the bottom item inside it, that is, the\hline
. Thuswill do what you're looking for without the need to enclose things in an outer
\vbox
.Top alignment
Top alignment is slightly harder, but not impossible. With
the reference point of
\firstfig
will be the top\hline
; so what you need is to shift down\secondfig
:but the second box will be slightly lower than the first one, because the reference point is the bottom of the
\hline
, which has a thickness. With thecalc
package one can adjust for it:Final remark
The package
adjustbox
by Martin Scharrer lifts many of these problems, providing very easy methods for modifying the reference point and the alignment of the objects.