Well, is is perhaps worth noting that, if the alignment of the columns is really what the OP says (rcl
without vertical rules, at least to the left of the first column and to the right of the last one), there is also a trivial solution: just pretend that the two outer columns have zero width.
% My standard header for TeX.SX answers:
\documentclass[a4paper]{article} % To avoid confusion, let us explicitly
% declare the paper format.
\usepackage[T1]{fontenc} % Not always necessary, but recommended.
\usepackage[ascii]{inputenc} % Just to check that the source is still pure,
% 7-bit-clean ASCII when you execute it, as it
% was when I wrote it.
% End of standard header. What follows pertains to the problem at hand.
\usepackage{array}
\makeatletter
% Hand crafted versions of "\llap" and "\rlap". Note that it is irrelevant
% which column specifier (l, c, or r) is used here; so, we just use the one
% that reminds what the column alignment looks like.
\newcolumntype{A}{>{\hb@xt@\z@\bgroup\hss}r<{\egroup}}
\newcolumntype{B}{>{\hb@xt@\z@\bgroup}l<{\hss\egroup}}
\makeatother
\begin{document}
Text before.
\begin{center}
% The picture is here simply to draw the line the marks the central axis.
\setlength{\unitlength}{1cm}
\begin{picture}(0,0)
\linethickness{.2pt}
\put(0,1){\line(0,-1){10}}
\end{picture}\\[-\baselineskip]
%
% Here is the tabular:
\begin{tabular}{A|c|B}
% Vertical bars are inserted around the middle column, in order to
% clearly show its boundaries, but you can remove them.
Left & Center & Right \\
Short & Somewhat longer & Narrow \\
This is a pretty long entry & This is not as much & \\
& Random text & Hi! \\
Lorem ipsum & Dolor sit & Amet \\
Consectetur & Adipisci elit & Mus \\
Another pretty long entry & Shorter one & Fringilla \\
(Boring, isn't it?) & Iam ligula & Abc \\
A & B & C \\
This makes ten lines: & it should be\ldots & \ldots enough! \\
\end{tabular}
\end{center}
Text after.
\end{document}
Here is what the output looks like:

Addendum: Here is a brief explanation of the code, as requested by Daniel’s comment.
The A
column specifier is defined in such a way to virtually wrap the cell contents in a \llap
command; indeed, it prepends (the equivalent of) \hbox to 0pt {\hss
to the cell contents, and appends (the equivalent of) }
after them. This has the effect of making the contents behave as a box of null width (\hbox to 0pt
), with the text sticking out to the left (because \hss
is to the left of the text itself).
The same holds true for the B
specifier, but with left and right interchanged. So, this specifier virtually wraps the cell contents in a \rlap
command, since (the equivalent of) \hbox to 0pt {
is put before the, and \hss}
after them; having, this time, the \hss
command on the right, the text will protrude towards that direction.
See also The TeXbook, p. 82.