2011-04-11 14 views
5

मैं अपने दस्तावेज़ कि नीचे चित्र में और अधिक या कम तालिका जैसा दिखता में एक तालिका बनाने के लिए कोशिश कर रहा हूँ:टैब्यूलर (* | x) में पंक्ति रंग बदलना?

Example table with alternate row coloring

इस तालिका में माना जाता है \textwidth करने के लिए क्षैतिज बढ़ाया जा सकता है। \textwidth करने के लिए पूरे तालिका फैलाने के लिए

Example table with tabular*

ठीक है, वैकल्पिक पंक्ति रंग काम करता है लेकिन स्तंभों के बीच tabular* आवेषण अंतरिक्ष: मेरी tabular* साथ पहला प्रयास इस तरह देखा:

\documentclass{scrartcl} 
\usepackage[table]{xcolor} 
\definecolor{tableShade}{gray}{0.9} 

\begin{document} 
    \rowcolors{3}{tableShade}{white} %% start alternating shades from 3rd row 
    \noindent\begin{tabular*}{\textwidth}{@{\extracolsep{\fill}}lrrr} 
    Something & foo & bar & baz \\ 
    Something & foo & bar & baz \\ 
    Something & foo & bar & baz \\ 
    Something & foo & bar & baz \\ 
    Something & foo & bar & baz \\ 
    \end{tabular*} 
\end{document} 

परिणाम था। मेरे लाटेक्स साथी के माध्यम से ब्राउज़ करना मैंने पाया कि tabularx जो मैं चाहता हूं वह करने में सक्षम होना चाहिए। इसलिए मैंने अपना कोड इस तरह दिखने के लिए बदल दिया:

\documentclass{scrartcl} 
\usepackage[table]{xcolor} 
\usepackage{tabularx} 
\definecolor{tableShade}{gray}{0.9} 

\begin{document} 
    \rowcolors{3}{tableShade}{white} %% start alternating shades from 3rd row 
    \noindent\begin{tabularx}{\textwidth}{Xrrr} 
    Something & foo & bar & baz \\ 
    Something & foo & bar & baz \\ 
    Something & foo & bar & baz \\ 
    Something & foo & bar & baz \\ 
    Something & foo & bar & baz \\ 
    \end{tabularx} 
\end{document} 

अब, यह और अधिक दिखता है। लेकिन tabularx रंग के लिए प्रारंभिक पंक्ति को अनदेखा करता है और पहली पंक्ति के साथ शुरू होता है।

Example table with tabularx

अब मैं विचारों की समाप्त हो चुकी है। कोई सुझाव?

उत्तर

6

कोई फिक्स नहीं है लेकिन चारों ओर एक हैक, पहली पंक्ति में \ hiderowcolors जोड़ें, फिर रंगों को \ showrowcolors के साथ चालू करें। कोड देखें:

\rowcolors{3}{tableShade}{white} %% start alternating shades from 3rd row 
    \noindent\begin{tabularx}{\textwidth}{X X X X}%this can be {Xrrr} too 
    \hiderowcolors 
    Something & foo & bar & baz \\ 
    \showrowcolors 
    Something & foo & bar & baz \\ 
    Something & foo & bar & baz \\ 
    Something & foo & bar & baz \\ 
    Something & foo & bar & baz \\ 
\end{tabularx} 
+0

मुझे लगता है कि यह वर्तमान में सबसे अच्छा है जिसे हम टैब्यूलर के प्रतिस्थापन के बिना लिख ​​सकते हैं। –

संबंधित मुद्दे