KTUG 한국 텍 사용자 그룹

Menu

KTUG :: Q&A 마당 › picture environment를 이용한 thumb index 만들기 질문입니다.

mhd06 | 2019.05.08 01:56:41 | 메뉴 건너뛰기 쓰기

안녕하세요, 페이지 가장자리에 section 별로 위치가 달라지는 thumb index를 만들고 싶어서 아래와 같은 코드를 만들었습니다.

Picture environment로 사각형을 그린 다음에 그 수직방향 위치를 \value{section}의 함수로 \numexpr을 사용하여 집어넣은 것입니다.

그런데 section의 개수가 너무 많아지면 thumb index가 페이지 밑바닥을 뚫고 없어지기 때문에, 7번마다 한번씩 처음 시작했던 높이로 올라오도록 하고싶습니다. \numexpr는 modulo 연산자를 지원하지 않는 것 같아서 직접 a-(a/b)*b 이런 식으로 고쳐서 썼는데, \numexpr 안에 들어가는 expression에 괄호가 들어가면 컴파일 에러가 나네요... 어찌해야 좋을지 모르겠어서 도움을 청합니다.

\documentclass[twoside,12pt]{xoblivoir}
\usepackage{pdfpages}
\usepackage{fapapersize}
\usepackage{graphicx}
\usepackage{fp}


\usefapapersize{213mm,301mm,10mm,10mm,30mm,25mm}  % 좌우상하 여백
\setlength{\unitlength}{10mm}
\newcommand{\blob}{\textcolor{gray}{\rule[-0.25\unitlength]{\unitlength}{\unitlength}}}
\newcommand\rblob{%
 \begin{picture}(0,0)
  \put(0,\numexpr-\value{section}*3+3\relax){\blob}
  \put(0.1,\numexpr-\value{section}*3+3\relax){\textcolor{white}{\LARGE\emph{\textbf{\thesection}}}}
 \end{picture}}
\newcommand\lblob{%
 \begin{picture}(0,0)
  \put(-1.05,\numexpr-\value{section}*3+3\relax){\blob}
  \put(-0.9,\numexpr-\value{section}*3+3\relax){\textcolor{white}{\LARGE\emph{\textbf{\thesection}}}}
 \end{picture}%
}

\makepagestyle{mystyle}
 %\makeheadrule{mystyle}{\textwidth}{2pt}
 %\makeevenfoot{mystyle}{\rightmark}{\LARGE\textbf{\thepage}}{}
 \makeevenfoot{mystyle}{\textbf{\thepage}\hspace{1em}|\hspace{1em}\rightmark}{}{}
 \makeoddfoot{mystyle}{}{}{\rightmark\hspace{1em}|\hspace{1em}\textbf{\thepage}}
 \makeevenhead{mystyle}{\lblob}{}{} % leftmark는 문서제목이기에, section명이 나오는 rightmark로 조판.
 \makeodd head{mystyle}{}{}{\rblob}  % 금지어라서 odd head 띄웠습니다.
\pagestyle{mystyle}

\begin{document}

\pagestyle{mystyle}

\section{test1}
\clearpage

\section{test2}
\clearpage

\section{test3}
\clearpage

\section{test4}
\clearpage

\end{document}

댓글 [8]

댓글 쓰기

목록 삭제

KTUG 한국 텍 사용자 그룹