章节目录格式

章节目录格式

此代码生成以下输出:

\documentclass{memoir}
\usepackage{lipsum}
\usepackage{titletoc}
\usepackage{tikz}

\titlecontents{psection}[2.3em]
    {\large}
    {\contentslabel{2.5em}}
    {}
    {\hspace*{.5em}\tikz[baseline]{\node[draw, inner sep=3pt, rounded corners, fill=red!30, anchor=base]{\thecontentspage};}}
    
\begin{document}

\tableofcontents

\chapter{Intro}
\startcontents[chapters]
\printcontents[chapters]{p}{1}{}
\lipsum[1-2]

\section{Sec1 I have title}
\lipsum[1-9]
\section{Sec2 Title goes here}
\lipsum[3-8]
\section{Sec3 Conditions goes here}
\lipsum[3-7]

\chapter{Chap2}
\startcontents[chapters]
\printcontents[chapters]{p}{1}{}

\lipsum[3]
\section{Sec1 This is a section}
\lipsum[1-9]
\section{Sec2 Final doc}
\lipsum[3-8]
\section{Sec3 Conditions goes here}
\lipsum[3-7]

\end{document}

输出:

在此处输入图片描述

问题是:我希望章节内容中的页码垂直相等地出现在一条线上。我已突出显示了我的需求。黄色标记显示页码 3、5 和 7 应根据我对距离的选择出现在一条直线上。我可以让它更近或更远。

有什么建议吗?谢谢。

答案1

通过使用\hfill和,\hspace{...}您可以做您想做的事情(更改值hspace以使其更接近或远离右边界):

在此处输入图片描述

\documentclass{memoir}
\usepackage{lipsum}
\usepackage{titletoc}
\usepackage{tikz}

\titlecontents{psection}[2.3em]
    {\large}
    {\contentslabel{2.5em}}
    {}
    {\hfill\tikz[baseline]{\node[draw, inner sep=3pt, rounded corners, fill=red!30, anchor=base]{\thecontentspage};}\hspace*{4cm}}
    
\begin{document}

\tableofcontents

\chapter{Intro}
\startcontents[chapters]
\printcontents[chapters]{p}{1}{}
\lipsum[1-2]

\section{Sec1 I have title}
\lipsum[1-9]
\section{Sec2 Title goes here}
\lipsum[3-8]
\section{Sec3 Conditions goes here}
\lipsum[3-7]

\chapter{Chap2}
\startcontents[chapters]
\printcontents[chapters]{p}{1}{}

\lipsum[3]
\section{Sec1 This is a section}
\lipsum[1-9]
\section{Sec2 Final doc}
\lipsum[3-8]
\section{Sec3 Conditions goes here}
\lipsum[3-7]

\end{document}

相关内容