fancyhdr 헤드 규칙을 홀수로 뒤집기

fancyhdr 헤드 규칙을 홀수로 뒤집기

\headrule페이지 번호 아래에서 짧은 페이딩을 달성하려고 합니다 . 하지만 짝수/홀수 페이지에서 "뒤집기"하는 방법을 알 수 없습니다. 그걸 관리하는 방법을 아는 사람이 있나요?

너무 작다 는 경고도 나옵니다 headheight. 로 인해 발생하는 문제 tikzpicture인데 어떻게 해결할 수 있나요? headheight그렇게까지 늘리고 싶지는 않은데 ...

\documentclass[11pt, titlepage, openright]{book}

\usepackage[textwidth=13cm, left=2.5cm, bottom=2cm, top=2.5cm, paperwidth=20cm, paperheight=27cm, layoutwidth=19cm, layoutheight=26cm, layouthoffset=0.5cm, layoutvoffset=0.5cm, showcrop, asymmetric]{geometry}
\usepackage{fancyhdr}
\usepackage{tikz}
\usepackage{lipsum}

\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\fancyhead{}
\fancyfoot{}

\definecolor{grey}{rgb}{0.6,0.6,0.6}
\definecolor{darkgrey}{rgb}{0.4,0.4,0.4}

\setlength{\headheight}{24pt}
\fancyhead[RO]{\sffamily\bfseries\textcolor{grey}\leftmark\hspace{0.3cm}\sffamily\textcolor{darkgrey}\thepage}
\fancyhead[LE]{\sffamily\bfseries\textcolor{darkgrey}\thepage\hspace{0.3cm}\sffamily\textcolor{grey}\leftmark}
\renewcommand{\headrulewidth}{0.6pt}
\renewcommand{\footrulewidth}{0pt}
\renewcommand{\headrule}{
\begin{tikzpicture}
    \shade[white] (0,0) rectangle (8,0);
    \shade[left color=white, right color=black, dashed] (8,1) rectangle (12.98,1.01);
\end{tikzpicture}}

\begin{document}

\chapter{Test chapter}
\lipsum
\lipsum

\end{document}

답변1

\count0표준 LaTeX에서는 왼쪽/오른쪽 헤더 확인이 via 값에 대해 수행됩니다 \ifodd. 명령 에서 이를 사용하여 \headrule두 페이지에 서로 다른 그림을 설정할 수 있습니다.

headheight사양 에 옵션을 추가하면 geometry더 많은 공간이 제공됩니다. 로그 파일에 보고된 값을 사용하십시오.

그러나 귀하는 귀하의 질문에서 그렇게 하고 싶지 않다고 말했습니다. 헤더가 너무 큰 이유는 높이에 공백을 0그리고 높이에 규칙을 그려 헤더를 위로 이동하려고 하기 때문입니다 1. 더 쉬운 방법은 규칙을 그리고 수직 건너뛰기를 사용하여 규칙이 올바르게 배치되었는지 확인하는 것입니다.

샘플 짝수 페이지

샘플 홀수 페이지

\documentclass[11pt, titlepage, openright]{book}

\usepackage[textwidth=13cm, left=2.5cm, bottom=2cm, top=2.5cm,
paperwidth=20cm, paperheight=27cm, layoutwidth=19cm,
layoutheight=26cm, layouthoffset=0.5cm, layoutvoffset=0.5cm,
showcrop, asymmetric]{geometry}
\usepackage{fancyhdr}
\usepackage{tikz}
\usepackage{lipsum}

\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\fancyhead{}
\fancyfoot{}

\definecolor{grey}{rgb}{0.6,0.6,0.6}
\definecolor{darkgrey}{rgb}{0.4,0.4,0.4}

\setlength{\headheight}{24pt}
\fancyhead[RO]{\sffamily\bfseries\textcolor{grey}\leftmark\hspace{0.3cm}\sffamily\textcolor{darkgrey}\thepage}
\fancyhead[LE]{\sffamily\bfseries\textcolor{darkgrey}\thepage\hspace{0.3cm}\sffamily\textcolor{grey}\leftmark}
\renewcommand{\headrulewidth}{0.6pt}
\renewcommand{\footrulewidth}{0pt}

\renewcommand{\headrule}{%
\vskip-\baselineskip\vskip4pt
\ifodd\count0\hfill\begin{tikzpicture}
    \shade[left color=white, right color=black, dashed] (0,0) rectangle (4.98,0.01);
\end{tikzpicture}\else\begin{tikzpicture}
    \shade[left color=black, right color=white, dashed] (0,0) rectangle (4.98,.01);
\end{tikzpicture}\fi}

\begin{document}

\chapter{Test chapter}
\lipsum
\lipsum

\end{document}

답변2

패키지 를 사용하면 그렇게 할 수 있습니다 etoolbox.

\documentclass[11pt, titlepage, openright]{book}

\usepackage[textwidth=13cm, left=2.5cm, bottom=2cm, top=2.5cm, paperwidth=20cm, paperheight=27cm, layoutwidth=19cm, layoutheight=26cm, layouthoffset=0.5cm, layoutvoffset=0.5cm, showcrop, asymmetric]{geometry}
\usepackage{fancyhdr}
\usepackage{tikz}
\usepackage{lipsum}

\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\fancyhead{}
\fancyfoot{}

\definecolor{grey}{rgb}{0.6,0.6,0.6}
\definecolor{darkgrey}{rgb}{0.4,0.4,0.4}%
\usepackage{etoolbox}
\setlength{\headheight}{24pt}
\fancyhead[RO]{\sffamily\bfseries\textcolor{grey}\leftmark\hspace{0.3cm}\sffamily\textcolor{darkgrey}\thepage}
\fancyhead[LE]{\sffamily\bfseries\textcolor{darkgrey}\thepage\hspace{0.3cm}\sffamily\textcolor{grey}\leftmark}
\renewcommand{\headrulewidth}{0.6pt}
\renewcommand{\footrulewidth}{0pt}

\renewcommand{\headrule}{%
\begin{tikzpicture}%
\ifnumodd{\value{page}}{%
 \shade[white] (0,0) rectangle (8,0);
    \shade[left color=white, right color=black, dashed] (8,1) rectangle (12.98,1.01);
}%
{%
 \shade[white] (0,0) rectangle (5,0);
 \shade[left color=black, right color=white, dashed] (0,1) rectangle (4.98,1.02);
 }
\end{tikzpicture}
}%

\begin{document}

\chapter{Test chapter}
\lipsum
\lipsum

\end{document} 

여기에 이미지 설명을 입력하세요

여기에 이미지 설명을 입력하세요

답변3

\fancyhead내용을 안에 넣으면 node그리기가 쉬워집니다.

\fancyhead[RO]{%
  \begin{tikzpicture}
    \node[inner xsep=0pt, align=right,text width=5cm] (a) {\sffamily\bfseries\textcolor{grey}
             {\leftmark}\hspace{0.3cm}\sffamily\textcolor{darkgrey}{\thepage}};
    \shade[left color=white, right color=black, dashed] (a.south west) rectangle
            ([yshift=0.01cm]a.south east);
  \end{tikzpicture}%
  }
\fancyhead[LE]{%
  \begin{tikzpicture}
    \node[inner xsep=0pt, align=left,text width=5cm](a){\sffamily\bfseries\textcolor{darkgrey}
     {\thepage}\hspace{0.3cm}\sffamily\textcolor{grey}{\leftmark}};
    \shade[right color=white, left color=black, dashed] (a.south west) rectangle
            ([yshift=0.01cm]a.south east);
  \end{tikzpicture}%
  }

암호:

\documentclass[11pt, titlepage, openright]{book}

\usepackage[textwidth=13cm, left=2.5cm, bottom=2cm, top=2.5cm, paperwidth=20cm, paperheight=27cm, layoutwidth=19cm, layoutheight=26cm, layouthoffset=0.5cm, layoutvoffset=0.5cm, showcrop, asymmetric,headheight=24pt]{geometry}
\usepackage{fancyhdr}
\usepackage{tikz}
\usepackage{lipsum}

\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\fancyhead{}
\fancyfoot{}

\definecolor{grey}{rgb}{0.6,0.6,0.6}
\definecolor{darkgrey}{rgb}{0.4,0.4,0.4}

%\setlength{\headheight}{24pt}
\fancyhead[RO]{%
  \begin{tikzpicture}
    \node[inner xsep=0pt, align=right,text width=5cm] (a) {\sffamily\bfseries\textcolor{grey}
             {\leftmark}\hspace{0.3cm}\sffamily\textcolor{darkgrey}{\thepage}};
    \shade[left color=white, right color=black, dashed] (a.south west) rectangle
            ([yshift=0.01cm]a.south east);
  \end{tikzpicture}%
  }
\fancyhead[LE]{%
  \begin{tikzpicture}
    \node[inner xsep=0pt, align=left,text width=5cm](a){\sffamily\bfseries\textcolor{darkgrey}
     {\thepage}\hspace{0.3cm}\sffamily\textcolor{grey}{\leftmark}};
    \shade[right color=white, left color=black, dashed] (a.south west) rectangle
            ([yshift=0.01cm]a.south east);
  \end{tikzpicture}%
  }
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}


\begin{document}

\chapter{Test chapter}
\lipsum
\lipsum

\end{document}

여기에 이미지 설명을 입력하세요

여기에 이미지 설명을 입력하세요

관련 정보