VieTeX

Chương trình soạn thảo TeX

Bảng và các gói lệnh liên quan (V)

Posted by nhdien on 13/06/2009

1. Gói lệnh slashbox.sty

Gói lệnh này nhằm mục đích kẻ chéo các ô như gọi lệnh makecell.sty có tại địa chỉ
http://tug.ctan.org/tex-archive/macros/latex/contrib/slashbox/

của tác giả Koichi Yasuoka. Ví dụ đơn giản nhất là

\begin{tabular}{|l||*{5}{c|}}\hline
\backslashbox{Room}{Date}
&\makebox[3em]{5/31}&\makebox[3em]{6/1}&\makebox[3em]{6/2}
&\makebox[3em]{6/3}&\makebox[3em]{6/4}\\\hline\hline
Meeting Room &&&&&\\\hline
Auditorium &&&&&\\\hline
Seminar Room &&&&&\\\hline
\end{tabular}

bang45

Như vậy lệnh \backslashbox{Room}{Date} cho ta đường kẻ đường chéo chính của ô, còn lệnh \slashbox{C}{D} cho ta đường chéo phụ của ô:

\begin{table}
\begin{center}
\caption{Ví dụ}
\begin{tabular}{|c||c|c||c|}\hline
\backslashbox{A}{B}& \makebox[3em]{1}& \makebox[3em]{2}&\slashbox{C}{D}\\
\hline \hline
 1 &11&12&1\\ \hline
 2 &21 &22&2\\ \hline
\end{tabular}
\end{center}
\end{table}

bang46

Kết hợp với @{}
\begin{tabular}{|@{\ $\bullet$\hspace*{3mm}}l||*{5}{c|}}\hline
\multicolumn{1}{|@{}l||}{\backslashbox[0pt][l]{Room}{Date}}
&\makebox[3em]{5/31}&\makebox[4em]{6/1}&\makebox[3em]{6/2}
&\makebox[3em]{6/3}&\makebox[3em]{6/4}\\\hline\hline
Meeting Room &&&&&\\\hline
Auditorium &&&&&\\\hline
Seminar Room &&&&&\\\hline
\end{tabular}
bang47

Ô kẻ lại là hai dòng trong bảng
\begin{center}
\begin{tabular}{|cc|ccc|c|c|}
\hline
\backslashbox[4mm]{}{}&A&\multicolumn{3}{c|}{H}
&\multirow{3}{5mm}{\hfill C\hfill }&\multirow{3}{5mm}{\hfill D\hfill}\\
\cline{3-5}
T&\backslashbox[4mm]{}{}&1&2&3&&\\
\hline
\multicolumn{2}{|c|}{1}&$c_{11}$&$c_{12}$&$c_{13}$&$d_1$&$x_1$\\
\multicolumn{2}{|c|}{2}&$c_{21}$&$c_{22}$&$c_{23}$&$d_2$&$x_2$\\
\multicolumn{2}{|c|}{3}&$c_{31}$&$c_{32}$&$c_{33}$&$d_3$&$x_3$\\
\hline
\end{tabular}
\end{center}
bang48

2. Gói lệnh longtable.sty

Gói lệnh này đã được nói trong cuốn sách của tôi ở đây tôi chỉ điểm qua một số khả năng của loại bảng này. Mục đích chính của gói này là làm bảng dài quá một trang thì ngắt được.

– Khả năng xen ngang các dòng vào bảng

\def\iroh{Nội dung cắt ngang một bảng dài để giải thích các cột bên trong}
\begin{longtable}{|l|l|l|}
\hline
\multicolumn{1}{|c|}{Một}&\multicolumn{1}{c|}{Giữa}&\multicolumn{1}{c|}{Hai}\\
\hline
a&b&c\\
a&b&c\\
\noalign{\vskip 8pt\hskip-\parindent \iroh}
\noalign{\vskip 8pt}
a&b&c\\
a&b&c\\
a&b&c\\
\noalign{\vskip 8pt\iroh}
\noalign{\vskip 8pt}
a&b&c\\
a&b&c\\
aaaaaaa&bbbb&cc\\

a&b&c\\
a&b&c\\
a&b&c\\
\noalign{\vskip 8pt\hskip-\parindent \iroh}
\noalign{\vskip 8pt}
a&b&c\\
a&b&c\\
a&b&c\\
\noalign{\vskip 8pt\iroh}
\noalign{\vskip 8pt}
a&b&c\\
a&b&c\\
aaaaaaa&bbbb&cc\\
a&b&c\\
\hline
\end{longtable}

bang49

Ví dụ vượt qua các trang

\begin{longtable}[c]{ccccccccc}
\caption{Ví dụ rồi}
\\
\hline
\textbf{Time} & \textbf{T} & \textbf{amps} & \textbf{volts}
&  \textbf{ohmmetre} & \textbf{V} & \textbf{Air}
& \textbf{Vacuum} & \textbf{Water}
\endfirsthead
\multicolumn{9}{l}{\small\slshape Tiếp tục từ trang trước} \\
\hline
\textbf{Time} & \textbf{T} & \textbf{amps} & \textbf{volts}
&  \textbf{Row} & \textbf{V} & \textbf{Air}
& \textbf{Vacuum} & \textbf{Water} \\
\hline
\endhead
\multicolumn{9}{r}{\small\sl Bảng tiếp tục ở chương sau}
\\
\endfoot
\hline
\endlastfoot
\hline
     – & 22.20  & 0.61  & 134.5   &   8.69  &   –   & –    &  –  & \\
0.33  &   –    & 0.75  & 134.5   &   7.06  &   –   & –    &  –  & \\
0.45  & 46.30  & 0.85  & 132.8   &   6.15  &   25  & 6.2  & 15  & \\
\rowcolor[gray]{0.9}
0.53  & 51.60  & 0.90  & 124.4   &   5.44  &   25  & 6.2  & 15  & \\
\rowcolor[gray]{0.9}
0.75  & 64.20  & 1.06  & 125.3   &   4.66  &   35  & 6.6  & 15  & \\
\rowcolor[gray]{0.9}
0.85  & 66.80  & 1.04  & 125.3   &   4.75  &   70  & 6.5  & 15  & \\
0.95  & 66.50  & 0.98  & 124.3   &   5.00  &   65  & 6.4  & 15  & \\
1.08  & 66.90  & 0.85  & 125.7   &   5.83  &   65  & 6.6  & 15  & \\
1.42  & 58.00  & 1.10  & 123.8   &   4.43  &   50  & 6.7  & 15  & 20 \\
\rowcolor[gray]{0.9}
1.58  & 62.00  & 1.01  & 124.7   &   4.86  &   50  & 6.8  & 15  &    \\
\rowcolor[gray]{0.9}
1.60  & 61.40  & 1.06  & 124.2   &   4.62  &   65  & 6.5  & 15  & 40 \\
\rowcolor[gray]{0.9}
1.72  & 71.80  & 1.00  & 124.3   &   4.90  &   50  & 7.2  &  5  & \\
1.75  & 73.00  & 0.78  & 124.6   &   6.29  &   70  & 7.4  & 15  & \\
1.78  & 73.50  & 0.78  & 124.6   &   6.29  &   70  & 7.4  & 15  & \\
1.83  & 74.00  & 1.00  &  95.7   &   3.77  &   75  & 7.0  &  5  & 15 \\
…………………………

52.00  & 71.20  & 0.90  &  59.3  &   2.60  &   –   & –    &  5  & \\
52.92  & 85.00  & 1.16  &  60.1  &   2.04  &   –   & –    &  –  & \\
53.33  & 85.00  & 1.16  &  60.1  &   2.04  &   –   & –    &  –  & \\
\end{longtable}

bang50

 

3. Kết luận

Còn một số gói lệnh và kỹ thuật khác tôi sẽ đề cập tới bài sau trong thời gian tới.

3 Responses to “Bảng và các gói lệnh liên quan (V)”

  1. nntan73 said

    Tài liệu thày cho chỉ xem được ba trang đầu, những trang còn lại trắng cả, không xem được gì ạ!
    Trả lời
    Tôi đã kiểm tra rồi còn rất tốt, nếu bạn không xem được thì tại chỗ bạn load không đủ. Lần sau làm hết cách rồi hãy phàn nàn nhé, tệp này nhiều người xem lắm rồi. Đừng làm mất thời gian của người khác vì phải đi kiểm tra lại. Mọi câu hỏi tôi chỉ trả lời gợi ý, không bao giờ làm hộ bạn và như vậy có ích cho Tôi và Bạn.

  2. nntan73 said

    Thày ơi, em muốn chú thích của một bảng ở phía trên bảng mà lệch về phía bên phải . Vậy em phải làm như thế nào ạ?
    Trả lời
    Bạn tìm gói lệnh ccaption.sty trong trang web này có tất cả.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: