LaTeX에서 헤더와 꼬리말을 제목 페이지에서도 통합하고 싶습니다.

5900 단어 LaTeX
이 기사에서는 LaTeX 문서 클래스 (예 : jsreport)에서 모든 페이지 (chapter가 시작되는 제목 페이지 등 포함)의 헤더와 바닥 글을 통합하는 방법을 보여줍니다.

LaTeX로 파일을 생성할 때, 헤더나 꼬리말을 삽입하고 싶은 경우가 있습니다(실제로는 일단 dvi 파일이 만들어져 거기로부터 pdf등의 파일로 변환됩니다만, 구조의 이야기는 여기에서는 하지 않습니다). 문서 클래스 (jsreport, book 등)에는 각각 기본 헤더와 바닥 글이 있습니다. 각 문서 클래스에 정의 된 기본 객체를 사용하지 않으려는 경우가 있습니다.

LaTeX에서 헤더와 바닥글을 편집하는 방법



헤더를 편집하려면 페이지 스타일을 변경하여 가능합니다. 프리앰블에서 \pagestyle{plain}와 같이 지정합니다. 주로 다음이 있습니다.
  • plain
  • empty
  • headings
  • myheadings
  • fancy (사용하려면 fancyhdr 패키지를로드해야 함)

  • 예를 들어 fancy의 경우, 다음과 같이 프리앰블에 넣어 페이지 스타일을 결정합니다. 자세한 내용은 Page layout in LaTeX [1]을 참조하십시오.
    \documentclass[a4paper]{jsreport}
    \usepackage{fancyhdr}
    \pagestyle{fancy}
        \lhead{ヘッダ左} %ヘッダ左
        \chead{ヘッダ中央} %ヘッダ中央
        \rhead{ヘッダ右} %ヘッダ右.コンパイルした日付を表示
        \lfoot{フッタ左} %フッタ左
        \cfoot{\thepage} %フッタ中央.ページ番号を表示
        \rfoot{フッタ右} %フッタ右
    % \renewcommand{\headrulewidth}{} %ヘッダの罫線
    % \renewcommand{\footrulewidth}{} %フッタの罫線
    \begin{document}
    .
    .
    \end{document}
    

    이 방법으로 페이지 스타일을 결정하고 머리글과 바닥 글을 편집합니다. 위의 설정의 경우 다음 이미지와 같습니다.


    LaTeX 및 upLaTeX의 제목 페이지


    \chapter\section와 같은 명령을 제목이라고합니다.

    기본적으로 다음과 같습니다 [2] :

    \chapter
    \renewcommand{\chapter}{%
        \if@openleft\cleardoublepage\else
        \if@openright\cleardoublepage\else\clearpage\fi\fi
        \plainifnotempty %元: \thispagestyle{plain}
        \global\@topnum\z@
        \if@english \@afterindentfalse \else \@afterindenttrue \fi
        \secdef
        {\@omit@numberfalse\@chapter}%
        {\@omit@numbertrue\@schapter}}
    
    \pagestyleempty로 지정되지 않으면 페이지의 페이지 스타일이 plain입니다. 장문의 페이지는 페이지 번호가 헤더 우측에 기재되어 프리앰블로 헤더나 꼬리말을 편집해도 효과가 없습니다. jsreportjsbook와 같은 \chapter를 사용할 수있는 문서 클래스에서 장문의 페이지는 오른쪽 페이지에 배치됩니다.

    \ chapter를 "재 재정의"하십시오.


    \chapter 바로 뒤에 \thispagestyle{}를 사용할 수도 있습니다. 그러나이 기사에서는 다른 방법을 보여줍니다.

    모든 페이지에서 헤더와 꼬리말 스타일을 통합하고 싶지만 이것이 불가능한 이유는 이전 장에서 설명한 정의 \chapter에 있습니다. LaTeX는 정의 된 명령을 재정의하고 재정의 된 명령을 사용할 수 있습니다. 프리앰블에서 다음과 같이 재정의하십시오. \plainifnotempty가있는 행을 지우기 만하면됩니다. 다음 내용을 프리앰블에 설명합니다. LaTeX에 대한 이해가 충분하지 않은 경우 \def를 사용하지 마십시오. 「LaTeX가 망가졌다!」사태가 될 수 있습니다.

    \chapter
    \makeatletter
    \renewcommand{\chapter}{%
        \if@openleft\cleardoublepage\else
        \if@openright\cleardoublepage\else\clearpage\fi\fi
        %\plainifnotempty %元: \thispagestyle{plain}
        \global\@topnum\z@
        \if@english \@afterindentfalse \else \@afterindenttrue \fi
        \secdef
        {\@omit@numberfalse\@chapter}%
        {\@omit@numbertrue\@schapter}}
    \makeatother
    

    이와 같이 재정의함으로써 프리앰블로 정한 헤더나 풋터가 각각의 장문 페이지에 기술됩니다.



    Reference



    [1] Piet van Oostrum, Page layout in LATEX
    [2] 오쿠무라 하루히코, pLATEX2ε 새로운 문서 클래스

    보충
  • 이 매뉴얼은 명령 프롬프트나 터미널에서 각각 다음과 같이 입력하면 매뉴얼이 열립니다:
  • $ texdoc fancyhdr
    $ texdoc jsclasses
    
  • 여기서 소개한 방법을 실제로 사용하는 경우는 자기의 책임하에 실시하도록(듯이) 부탁합니다.
  • 좋은 웹페이지 즐겨찾기