KTUGFaq

KTUG FAQ

로그인:
비밀번호:
가입
Of all forms of caution, caution in love is the most fatal.
FrontPage › LongTable
여러 페이지에 걸치는 커다란 표를 만드는 데는 longtable 패키지를 보통 이용한다. SuperTabular도 참고하라.

목차

1 LongTable에서 표의 머리를 여러 페이지에 걸쳐 동일하게 부여하기
2 LongTable에서 font size조정하기
3 longtable의 캡션과 표 사이의 간격 문제
4 longtable과 TabularX의 결합
5 LongTable에서의 가로선 굵기 조절

1 LongTable에서 표의 머리를 여러 페이지에 걸쳐 동일하게 부여하기


\usepackage{longtable}     % Preamble에서 선언
                           % 아래부터는 본문에서
\begin{longtable}{llll}
  \caption{역대 노벨문학상 수상자} \\ \hline
  연도 & 이름 & 국적 & 분야 \\ \hline
  \endfirsthead
  \caption[]{역대 노벨문학상 수상자(계속)} \\ \hline
  연도 & 이름 & 국적 & 분야 \\ \hline
  \endhead
  \hline
  \endfoot
  1901 & 쉴리 프뤼돔   & 프랑스   & 시인   \\
  1902 & 테오도어 몸젠 & 독일     & 역사가 \\
  1903 & B. 비외른손   & 노르웨이 & 소설가, 시인, 극작가 \\
  % ... 생략 ...
  1999 & 그라스, 귄터  & 독일     & 시인, 소설가 \\
  2000 & 가오싱젠      & 중국     & 극작가 \\
\end{longtable}

  • 3행 {llll}은 칼럼지시자로서 Tabular환경의 그것과 같다. see Tabular환경
  • \begin{longtable}에는 선택적으로 [c], [l], [r]중 하나의 옵션를 줄 수 있는데, 각각 테이블을 페이지의 가운데, 왼쪽, 오른쪽에 두라는 의미이다. 기본값은 가운데이다.

  • \endfirsthead, 즉 4-5행은 테이블 첫페이지의 머리에 나타나다.
  • \endhead, 즉 7-8행은 테이블의 모든 페이지 머리에 나타난다.
  • \endfoot, 즉 10행은 테이블의 모든 페이지 바닥에 나타난다.
  • \endlastfoot가 있다면 테이블의 마지막 페이지 바닥에 나타난다.

  • \caption{foo} : 캡션은 표 xx: foo로 보이고 listoftables에는 foo로 들어간다.
  • \captionbar{foo} : 캡션은 표 xx: foo로 보이고 listoftables에는 bar로 들어간다.
  • \caption[]{foo} : 캡션은 표 xx: foo로 보이고 listoftables에는 들어가지 않는다.
  • \caption*{foo} : 캡션은 foo로 보이고 listoftables에는 들어가지 않는다.

2 LongTable에서 font size조정하기

Q(From KTUGOperate:17514): longtable에서 caption 부분은 그대로 유지하고 테이블 안에 있는 글자만 font size를 줄이고 싶은데, 소스코드에서 어느 부분에 어떤 명령어를 넣어야 원하는 결과를 얻을수 있을까요???

A(From KTUGOperate:17523): 다음과 같이 해보시는 것은 어떨까요?
\makeatletter
\renewcommand\fnum@table[1]{\normalsize\selectfont\tablename~\thetable:}
\makeatother

\begin{document}

\begin{tiny}
\begin{longtable}{|c|c|c|rr|c|c|}
\caption{\normalsize 테이블에 대한 설명.}\label{tabExp1} \\ \hline
Circuit   & \#groups & Algorithm  & Wirelen & Reduction & Maximum 
Skew(ps) & CPU(s) \\ \hline
r1        &     1    & EXT-BST    & 1070421    &           & 10      
& 25    \\ \cline{2-7}
\end{longtable}
\end{tiny}

\end{document}

3 longtable의 캡션과 표 사이의 간격 문제

from KTUGOperate:2664 ltcaptionskip.sty(by Karnes)을 이용하여 캡션과 표 사이의 간격을 조절할 수 있다.
  1. \setLTcaptionskip{_dim_} : 길이단위로 _dim_ 만큼의 임의의 값을 설정함.
  2. \noLTcaptionskip : 인자 없이 캡션과 표 사이를 아주 줄임.

4 longtable과 TabularX의 결합

-> ltablex 패키지

5 LongTable에서의 가로선 굵기 조절

from KTUGOperate:3584
Tabular환경에서 보인 것과 유사하게 LongTable에서 가로선 굵기를 조절하는 \hlineht 명령의 정의
\makeatletter
\def\hlineht#1{%
   \noalign{\ifnum0=`}\fi
    \penalty\@M
    \futurelet
    \@let@token
  \ifx\@let@token\hline
    \global\let\@gtempa\@gobble
    \gdef\LT@sep{\penalty-\@medpenalty\vskip\doublerulesep}%
  \else
    \global\let\@gtempa\@empty
    \gdef\LT@sep{\penalty-\@lowpenalty\vskip-\arrayrulewidth}%
  \fi
  \ifnum0=`{\fi}%
  \multispan\LT@cols
     \unskip\leaders\hrule\@height #1 \hfill\cr
  \noalign{\LT@sep}%
  \multispan\LT@cols
     \unskip\leaders\hrule\@height #1 \hfill\cr
  \noalign{\penalty\@M}%
  \@gtempa}
\makeatother


booktabs패키지
booktabs패키지가 longtable환경도 지원하므로, 굳이 세로선이 필요하지 않다면 booktabs패키지를 이용하여 가로선 굵기를 조절할 수도 있다. See BookTabsPackage, Tabular환경booktabs.dvi.





^
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2006-07-26 15:15:09
Processing time 0.0414 sec