
thumbs
ヘブライ語の本でパッケージを使用してサムインデックスを作成しようとしましたが、失敗しました。お読みください最後の行は次のようになります。
- Polyglossary を使用した右から左への書き込みは、おそらく親指とは互換性がありません。
お勧めのシンプルな代替案はありますか? 親指インデックスの中にテキストを入れたいのですが。
必要な人のために、失敗したコードを以下に示します。
\documentclass{book}
\usepackage[height=4mm, width=1.5cm]{thumbs}
\pagenumbering{arabic}
\usepackage{polyglossia}
\setdefaultlanguage{hebrew} % comment this line, and get a nice thumb
\usepackage{fontspec}
\newfontfamily\hebrewfont{Times New Roman}[Script=Hebrew]
\begin{document}
\addthumb{Hello}{Hello}{white}{black}
\newpage
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris varius nisl sed enim consectetur, eu tempor libero cursus. Nulla at enim nunc. Duis vitae nibh erat. Nulla facilisi. Nunc eget ornare velit. Ut porta sed libero non tincidunt. Mauris dapibus pulvinar ornare.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris varius nisl sed enim consectetur, eu tempor libero cursus. Nulla at enim nunc. Duis vitae nibh erat. Nulla facilisi. Nunc eget ornare velit. Ut porta sed libero non tincidunt. Mauris dapibus pulvinar ornare.
\newpage
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris varius nisl sed enim consectetur, eu tempor libero cursus. Nulla at enim nunc. Duis vitae nibh erat. Nulla facilisi. Nunc eget ornare velit. Ut porta sed libero non tincidunt. Mauris dapibus pulvinar ornare.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mauris varius nisl sed enim consectetur, eu tempor libero cursus. Nulla at enim nunc. Duis vitae nibh erat. Nulla facilisi. Nunc eget ornare velit. Ut porta sed libero non tincidunt. Mauris dapibus pulvinar ornare.
\end{document}
答え1
この答えは私の答えのバリエーションですhttps://tex.stackexchange.com/a/300186/93559。
これは、 を使用してサムネイル インデックスを生成するコードですtikz
。すべてのサムネイルがドキュメント内のサムネイル インデックスと同じ高さにリストされているページが必要な場合は、これを追加することもできます。
アイデアは、tikz
親指のインデックスを含む画像を描くフックをすべてのページに追加することです。
このコマンドは\SetThumbInd
次のように定義されます
\newcommand{\SetThumbInd}[1]{%
\setboolean{specialpage}{false}
\addtolength{\ThumbIndY}{\ThumbStep}
\renewcommand{\ThumbText}{#1}
\setlength{\ThumbStep}{\totalheightof{\parbox{\ThumbIndWidth-4mm}{#1}}+5.5mm}}
は、サムインデックスのテキストを に保存し\ThumbText
、次のサムインデックスの位置を処理するために使用されます。 2 つのサムインデックス間の距離は、コマンド に保存されます\ThumbStep
。
このコマンドはサム インデックスをオフにします。内部的には、サム インデックスのないページでは true となる\NoThumb
ブール値によって処理されます。specialpage
完全なコード:
\documentclass{scrbook}
\usepackage{fontspec}
\usepackage{polyglossia}
\usepackage{everypage}
\usepackage{ifthen}
\usepackage{tikz}
\usepackage{calc}
\usetikzlibrary{calc}
\setmainlanguage{hebrew}
\newfontfamily\hebrewfont[Script=Hebrew]{David CLM}
\newfontfamily\hebrewfonttt[Script=Hebrew]{Miriam Mono CLM}
\newfontfamily\hebrewfontsf[Script=Hebrew]{Simple CLM}
\newcommand{\ThumbIndWidth}{1.8cm}
\newcommand{\NoThumb}{\setboolean{specialpage}{true}}
\newcommand{\ThumbText}{}
\newlength{\ThumbIndY}
\newlength{\ThumbStep}
\setlength{\ThumbIndY}{2cm}
\setlength{\ThumbStep}{0cm}
\newcommand{\SetThumbInd}[1]{%
\setboolean{specialpage}{false}
\addtolength{\ThumbIndY}{\ThumbStep}
\renewcommand{\ThumbText}{#1}
\setlength{\ThumbStep}{\totalheightof{\parbox{\ThumbIndWidth-4mm}{#1}}+5.5mm}}
\newcommand{\ThumbBreak}[1]{\addtolength{\ThumbIndY}{#1}}
\definecolor{thtcolor}{rgb}{1,1,1}
\definecolor{thbcolor}{rgb}{0.15,0.15,0.15}
\newboolean{specialpage}
\setboolean{specialpage}{true}
\AddEverypageHook{
\ifthenelse{\boolean{specialpage}}{}{
\ifthispageodd{
\begin{tikzpicture}[remember picture, overlay]
\node [shift={(0, -\the\ThumbIndY)}] at (current page.north west) {%
\begin{tikzpicture}[remember picture, overlay]
\node[shape=rectangle, color=thtcolor, minimum width=1.8cm, minimum height=0.7cm, text width=1.4cm,
align=center, anchor=base, fill=thbcolor, inner sep=2mm] (ThumbInd) at (0.9,0.4) {\bf\textsf{\ThumbText}};
\end{tikzpicture}};
\end{tikzpicture}}{
\begin{tikzpicture}[remember picture, overlay]
\node [shift={(-2cm, -\the\ThumbIndY)}] at (current page.north east) {%
\begin{tikzpicture}[remember picture, overlay]
\node[shape=rectangle, color=thtcolor, minimum width=2cm, minimum height=0.7cm, text width=1.6cm,
align=center, anchor=base, fill=thbcolor, inner sep=2mm] (ThumbInd) at (1,0.4) {\bf\textsf{\ThumbText}};
\end{tikzpicture}};
\end{tikzpicture}}}}
\begin{document}
\SetThumbInd{מילון}
\begin{center}
\textbf{\large א}
\end{center}
\newpage
\begin{center}
\textbf{\large ב}
\end{center}
\newpage
\NoThumb
\begin{center}
\textbf{\large ג}
\end{center}
\end{document}