Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

How can I center the column when using X in tabularx environment like in this example?

\begin{tabularx}{\textwidth}{@{}lXXXXX@{}}
 1 & 2 & 3 & 4 & 5 \\   
\end{tabularx}
share|improve this question
2  
do you want to centre an entire column or just one row, or just one cell? –  ArTourter Jan 3 '13 at 20:33
    
Sorry... I want to center all X columns –  Matthias Jan 3 '13 at 20:36
    
Use c instead of X. –  m0nhawk Jan 3 '13 at 20:37

3 Answers 3

up vote 10 down vote accepted

You have two solutions (well at least)

If you are bound to tabularx then you can use

\begin{tabularx}{\textwidth}{@{}l *5{>{\centering\arraybackslash}X}@{}}
1 & 2 & 3 & 4 & 5 & 6\\
\end{tabularx}

Alternatively you can use the tabu package which offers you a lot more flexibility:

\begin{tabu} to \textwidth {@{} l *5{X[c]}@{}}
1 & 2 & 3 & 4 & 5 & 6\\
\end{tabu}
share|improve this answer
    
how to do the tabularx for \ruggedright? just replacing centering doesnt work :( –  ankhi Sep 26 at 19:04
1  
@ankhi probably because it is spelt \raggedright! However, a solution to this question (and this really should be a separate question rather than a comment to a vaguely related one), is given in this answer which uses the same package as suggested by herbert below –  ArTourter Sep 27 at 0:45

Although this question is somewhat old, since I recently dealt with the same task, I present my solution: I defined a new columntype Y to center the cells in a tabularxenvironment.

In the preamble define:

\newcolumntype{Y}{>{\centering\arraybackslash}X}

to typeset the example simply enter

\begin{tabularx}{\textwidth}{@{}lYYYYY@{}}
 1 & 2 & 3 & 4 & 5 & 6\\   
\end{tabularx}
share|improve this answer
    
This is beautiful. Works nicely! –  Trefex Apr 7 at 16:15
\usepackage{tabularx,ragged2e}
\renewcommand\tabularxcolumn[1]{>{\Centering}p{#1}}

with ragged2e you do not need the \arraybackslash

share|improve this answer
    
Thanks for your answer too! –  Matthias Jan 3 '13 at 21:20

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.