输入文件和部分页面的页码

输入文件和部分页面的页码

我尝试.tex在主文档中编译多个文件,因此我使用包subfiles。我想显示每个输入文件的当前页面相对于输入文件的页码,并在每个页面上显示此输入文件的总页数;以及所有输入文件的总页数。我快成功了,但是……我使用本地计数器来计算页数,并使用多个计数器来计算每个输入文件的总页数(使用包totcount)。

我简化了代码,因此这里我有一个主文件“main-file.tex”,以及 3 个文件夹“Ch1”、“Ch2”和“Ch3”,第一个文件夹包含文件“Ch1-2nde.tex”,第二个文件夹包含文件“Ch2-2nde.tex”,最后一个文件夹包含文件“Ch3-2nde.tex”。以下是我用于 main-file.tex 的代码:

    \documentclass[s,onecolumn]{article}
    \RequirePackage[a4paper, top=0.5cm, bottom=1.6cm, left=0.7cm , right=0.7cm]{geometry}
    \usepackage{graphicx}
    \usepackage{lastpage}
    \RequirePackage{multido}
    \usepackage{subfiles}
    \RequirePackage{totcount}

    \RequirePackage{fancyhdr}
    \renewcommand\headrulewidth{1pt}
    \renewcommand\footrulewidth{1pt}
    \pagestyle{fancy}

    \makeatletter
    \let\org@subfile\subfile
    \renewcommand*{\subfile}[1]{%
        \filename@parse{#1}% LaTeX's file name parser
        \expandafter
        \graphicspath\expandafter{\expandafter{\filename@area}}%
        \org@subfile{#1}%
        \newpage %ajout ici pour sauter automatiquement une page entre
    }
    \makeatother

    \newcounter{localPage}
    \newcounter{AuxCounter} 
    \renewcommand{\theAuxCounter}{\roman{AuxCounter}}
    %to create counter "compteurChi" "compteurChii" ..., and \roman because no
    %number is supported as a counter name.

    \newcommand{\entetecours}[1]
    {
        \setcounter{localPage}{0}

        \begin{center} 
            {\textbf{\huge Chapitre #1}}
        \end{center}

        \fancyfoot[C]{\textbf{Page \thepage / \pageref{LastPage} }}
        \setcounter{AuxCounter}{#1}
        \fancyfoot[L]{Chap#1
            {\addtocounter{compteurCh\theAuxCounter}{1}
            \addtocounter{localPage}{1}
            \fbox{\bfseries \thelocalPage} / \total{compteurCh\theAuxCounter}}
            }
    }

    \begin{document}
    \multido{\i=1+1}{3}{%
        \setcounter{AuxCounter}{\i}
        \newcounter{compteurCh\theAuxCounter}
        \regtotcounter{compteurCh\theAuxCounter}
    }

    \multido{\i=1+1}{3}{\subfile{Ch\i/Ch\i-2nde}}
    \end{document}

这是 Ch1-2nde.tex 中的代码:

    \entetecours{1}
    Ch1 first page
    \newpage
    Ch1 second page
    \newpage
    Ch1 third page

Ch2-2nde.tex 中的代码:

    \entetecours{2}
    Ch2 first page
    \newpage
    Ch2 second page
    \newpage
    Ch2 third page

Ch3-2nde.tex 中的代码:

    \entetecours{3}
    Ch3 first page
    \newpage
    Ch3 second page
    \newpage
    Ch3 third page

因此,问题是,即使我编译了两次,前两个输入的文件的左下角仍然会留有“??”(compteurChi 和 compteurChii 的计数器值不存在于 .aux 文件中...我不知道为什么)。

请帮忙^^。

答案1

这个问题可以通过以下方法解决埃格尔这个帖子

相关内容