Получение двух таблиц в LaTeX с одинаковой (выровненной по правому краю) шириной столбца
у меня есть два очень коротких и последовательных раздела (для CV), каждый из которых содержит небольшую таблицу:
section{Work Experience}
begin{tabular}{r|p{11cm}}
Current & Your job at Your Company, Town
Jan 2009 & What your company does
& A description of what you do
multicolumn{2}{c}{}
end{tabular}
section{Education}
begin{tabular}{r|p{11cm}}
Slightly wider first column & University, Town
Jan 2009 & Thesis subject
& A description of what you did
multicolumn{2}{c}{}
end{tabular}
таким образом, каждая таблица имеет два столбца: первый, содержащий период, выровненный справа. Второй: дополнительная информация с определенной шириной, выровненной сверху (и слева).
на
5 ответов
если вы используете array
пакет, вы можете положить \hfill
в заголовке следующим образом, поэтому вам не нужно помнить, чтобы поместить его (или \parbox
) в каждой строке.
\documentclass{article}
\usepackage{multicol}
\usepackage{array}
\begin{document}
\section{Work Experience}
\begin{tabular}{>{\hfill}p{5cm}|p{11cm}}
Current & Your job at Your Company, Town \
Jan 2009 & What your company does \
& A description of what you do\
\multicolumn{2}{c}{}
\end{tabular}
\section{Education}
\begin{tabular}{>{\hfill}p{5cm}|p{11cm}}
Slightly wider first column & University, Town \
Jan 2009 & Thesis subject \
& A description of what you did\
\multicolumn{2}{c}{}
\end{tabular}
\end{document}
дать:
alt текст http://www.freeimagehosting.net/uploads/5e29f675e3.jpg
вот вариант ответа @RTBarnard с использованием tabularx
пакет:
\documentclass[a4paper,twoside,draft,12pt]{article}
\usepackage{tabularx}
\begin{document}
\section{Work Experience}
\begin{tabularx}{\textwidth}{>{\raggedleft}X|p{8cm}}
Current & Your job at Your Company, Town \
Jan 2009 & What your company does \
& A description of what you do\
\end{tabularx}
\section{Education}
\begin{tabularx}{\textwidth}{>{\raggedleft}X|p{8cm}}
Somewhat wider than first column,
overflowing into additional lines & University, Town \
Jan 2009 & Thesis subject \
& A description of what you did\
\end{tabularx}
\end{document}
Примечания:
- почему
tabularx
? Потому что это часто легче узнать ширину, которую вы имеете доступный для всей таблицы, и позволить TeX вычислить неизвестное ширина столбца. - первый параметр-общая ширина таблицы. Здесь я указал
\textwidth
чтобы заполнить ширину typeblock, но вы можете изменить это на любую меру, которая вам нужна. - Я используется
\raggedright
, а не\hfill
: если элемент перетекает во вторую строку,\hfill
будет выравнивать только правую первую строку абзаца. - был
\multicol
значительное? Я удалил его, чтобы сохранить ответ как можно более простым.
запуск с XeTeX под TeXLive.
вот одно из решений многих возможностей:
\begin{tabular}{r|p{11cm}}
\parbox{11cm}{\hfill Current} & Your job at Your Company, Town \
Jan 2009 & What your company does \
& A description of what you do\
\multicolumn{2}{c}{}\
\end{tabular}
в принципе, создать \parbox
с нужной шириной и поставить \hfill
в левом.
можно использовать array
пакет, чтобы указать команду заполнения для каждой строки в первом столбце:
\begin{tabular}{>{\hfill}p{11cm}|p{11cm}|}
например:
\documentclass{article}
\usepackage{array}
\begin{document}
\begin{tabular}{>{\hfill}p{5cm}|p{11cm}|}
This is a test & test
\end{tabular}
\begin{tabular}{>{\hfill}p{5cm}|p{11cm}|}
Test & this is a test
\end{tabular}
\end{document}