将按章节编号改为连续编号

将按章节编号改为连续编号

我正在用这个模板。模板提供了两种编号方式,即连续编号和按章节编号。根据模板开发人员的注释,应更改命令的参数\setcounter以在这些编号模式之间切换(0 – 按章节,1 – 连续)。在当前设置下,表格的编号是连续的,而图表和方程式的编号是按章节的。我需要为这三个设置连续编号。但是更改\setcounter{contnumeq}和命令的参数会导致错误,将和\setcounter{contnumfig}中的 0 更改为 1 也会导致错误。\ifthenelse{\equal{\thecontnumeq}\ifthenelse{\equal{\thecontnumfig}

\documentclass[12pt,a4paper]{extreport}

\usepackage{cmap}                           
\usepackage[T2A]{fontenc}       
\usepackage[utf8]{inputenc}         
\usepackage[english,russian]{babel} 
\usepackage{amsthm,amsfonts,amsmath,amssymb,amscd}
\usepackage{mathtools} 
\usepackage{tikz}
\usepackage{caption} 
\usepackage{chngcntr}

\usepackage{ifthen}
\newcounter{contnumeq}
\newcounter{contnumfig}
\newcounter{contnumtab}

\setcounter{contnumeq}{1}           % Нумерация формул: 0 --- пораздельно (во введении подряд, без номера раздела); 1 --- сквозная нумерация по всей диссертации
\setcounter{contnumfig}{1}          % Нумерация рисунков: 0 --- пораздельно (во введении подряд, без номера раздела); 1 --- сквозная нумерация по всей диссертации
\setcounter{contnumtab}{1}

\ifthenelse{\equal{\thecontnumeq}{0}}{%
    \counterwithout{equation}{chapter} % Убираем связанность номера формулы с номером главы/раздела
}
\ifthenelse{\equal{\thecontnumfig}{0}}{%
    \counterwithout{figure}{chapter}   % Убираем связанность номера рисунка с номером главы/раздела
}
\ifthenelse{\equal{\thecontnumtab}{1}}{%
    \counterwithout{table}{chapter}    % Убираем связанность номера таблицы с номером главы/раздела
}

\begin{document}

\chapter{First}

\begin{figure}[h]
    \centering
    \begin{tikzpicture}
        \draw (0,0) circle (1cm);
    \end{tikzpicture}
    \caption{Circle1}
    \label{fig1}
\end{figure}

\begin{table}[h]
    \centering
    \caption{Table1}
    \label{table1}
    \begin{tabular}{cc}
        \textbf{first row}  & \textbf{second row} \\
        firs cell   & second cell  \\
        third cell  & fourth cell  \\
    \end{tabular}
\end{table}

\begin{equation}
\overline{A} \vee \overline{B} \equiv \overline{A \wedge B}
\end{equation}

\chapter{Second}

\begin{figure}[h]
    \centering
    \begin{tikzpicture}
    \draw (0,0) circle (1cm);
    \end{tikzpicture}
    \caption{Circle2}
    \label{fig2}
\end{figure}

\begin{table}[h]
    \centering
    \caption{Table2}
    \label{table2}
    \begin{tabular}{cc}
        \textbf{first row}  & \textbf{second row} \\
        firs cell   & second cell  \\
        third cell  & fourth cell  \\
    \end{tabular}
\end{table}

\begin{equation}
\overline{A} \wedge \overline{B} \equiv \overline{A \vee B}
\end{equation}

\end{document}

答案1

连续计数的示例table只是偶然起作用,因为它\ifthenelse 需要三个参数,而不仅仅是两个。

\ifthenelse{test condition}{true branch}{false branch}

省略false前两个示例的分支必定会失败,因为它会尝试读取下一个示例\ifthenelse等等。对于最后一个LaTeX示例,假设最后一个参数为空。

\documentclass[12pt,a4paper]{extreport}

\usepackage{cmap}                           
\usepackage[T2A]{fontenc}       
\usepackage[utf8]{inputenc}         
\usepackage[english,russian]{babel} 
\usepackage{amsthm,amsfonts,amsmath,amssymb,amscd}
\usepackage{mathtools} 
\usepackage{tikz}
\usepackage{caption} 
\usepackage{chngcntr}

\usepackage{ifthen}
\newcounter{contnumeq}
\newcounter{contnumfig}
\newcounter{contnumtab}

\setcounter{contnumeq}{1}           % Нумерация формул: 0 --- пораздельно (во введении подряд, без номера раздела); 1 --- сквозная нумерация по всей диссертации
\setcounter{contnumfig}{1}          % Нумерация рисунков: 0 --- пораздельно (во введении подряд, без номера раздела); 1 --- сквозная нумерация по всей диссертации
\setcounter{contnumtab}{1}

\ifthenelse{\equal{\thecontnumeq}{1}}{%
    \counterwithout{equation}{chapter} % Убираем связанность номера формулы с номером главы/раздела
}{}
\ifthenelse{\equal{\thecontnumfig}{1}}{%
    \counterwithout{figure}{chapter}   % Убираем связанность номера рисунка с номером главы/раздела
}{}
\ifthenelse{\equal{\thecontnumtab}{1}}{%
    \counterwithout{table}{chapter}    % Убираем связанность номера таблицы с номером главы/раздела
}{}

\begin{document}

\chapter{First}

\begin{figure}[h]
    \centering
    \begin{tikzpicture}
        \draw (0,0) circle (1cm);
    \end{tikzpicture}
    \caption{Circle1}
    \label{fig1}
\end{figure}

\begin{table}[h]
    \centering
    \caption{Table1}
    \label{table1}
    \begin{tabular}{cc}
        \textbf{first row}  & \textbf{second row} \\
        firs cell   & second cell  \\
        third cell  & fourth cell  \\
    \end{tabular}
\end{table}

\begin{equation}
\overline{A} \vee \overline{B} \equiv \overline{A \wedge B}
\end{equation}

\chapter{Second}

\begin{figure}[h]
    \centering
    \begin{tikzpicture}
    \draw (0,0) circle (1cm);
    \end{tikzpicture}
    \caption{Circle2}
    \label{fig2}
\end{figure}

\begin{table}[h]
    \centering
    \caption{Table2}
    \label{table2}
    \begin{tabular}{cc}
        \textbf{first row}  & \textbf{second row} \\
        firs cell   & second cell  \\
        third cell  & fourth cell  \\
    \end{tabular}
\end{table}

\begin{equation}
\overline{A} \wedge \overline{B} \equiv \overline{A \vee B}
\end{equation}

\end{document}

相关内容