goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


Login  | Registrieren
Forum
      Option
[Erweitert]
  • Diese Seite weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

aktuelle Seitenzahl zur Nummerierung nutzen

 

milo hirsch
Forum-Newbie
Forum-Newbie

Beiträge: 8
Anmeldedatum: 02.01.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.01.2017, 15:09     Titel:
  Antworten mit Zitat      
Hi,

ich habe versucht deine Vorlage für equations auf figure und table anzupassen.

Code • Öffne in Overleaf

\documentclass[a4paper,twoside,10pt]{report}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usepackage{lmodern} %Type1-Schriftart für nicht-englische Texte
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{amsfonts}
\usepackage{perpage}
\MakeSortedPerPage{equation}
\MakeSortedPerPage{figure}
\MakeSortedPerPage{table}


% for equation
\makeatletter
\renewcommand\theequation{\theperpage
  \expandafter\ifx\csname pp@max@equation@\theabspage\endcsname\relax
  \else \expandafter\ifnum\csname pp@max@equation@\theabspage\endcsname>\z@
      .\alph{equation
}%
  \fi\fi}%
   
   
   % for figure
   \renewcommand\thefigure{\theperpage
  \expandafter\ifx\csname pp@max@figure@\theabspage\endcsname\relax
  \else \expandafter\ifnum\csname pp@max@figure@\theabspage\endcsname>\z@
      .\alph{figure
}%
  \fi\fi}%
   
   
   % for table
      \renewcommand\thetable{\theperpage
  \expandafter\ifx\csname pp@max@table@\theabspage\endcsname\relax
  \else \expandafter\ifnum\csname pp@max@table@\theabspage\endcsname>\z@
      .\alph{table
}%
  \fi\fi}%

\def\pp@ppagectr#1#2#3#4{\@ifundefined{c@pp@a@#1}{}{%
    \expandafter\ifx\csname pp@max@#1@#4\endcsname\relax
      \expandafter\gdef\csname pp@max@#1@#4\endcsname{0}%
    \else
      \global\expandafter\xdef\csname pp@max@#1@#4\endcsname{\the\numexpr
        1+\csname pp@max@#1@#4\endcsname\relax
}%
    \fi
    \def\next{#3}%
    \expandafter\ifx\csname pp@page@#1\endcsname\next
      \addtocounter{pp@a@#1}\@ne
    \else
      \setcounter{pp@a@#1}{\value{pp@r@#1}}%
    \fi
    \global\expandafter\let\csname pp@page@#1\endcsname\next
    \expandafter\pp@labeldef\expandafter
      {\number\value{pp@a@#1}}{#1}{#2}{#3}{#4}}}
\makeatother

\begin{document}
\begin{table}[htbp]
   \centering
\begin{tabular}{ l c r }
  1 & 2 & 3 \\
  4 & 5 & 6 \\
  7 & 8 & 9 \\
\end{tabular}
   \caption{beschreibung}
   \label{tab:2}
\end{table}
\begin{table}[htbp]
   \centering
\begin{tabular}{ l c r }
  1 & 2 & 3 \\
  4 & 5 & 6 \\
  7 & 8 & 9 \\
\end{tabular}
   \caption{beschreibung}
   \label{tab:1}
\end{table}
\begin{table}[htbp]
   \centering
\begin{tabular}{ l c r }
  1 & 2 & 3 \\
  4 & 5 & 6 \\
  7 & 8 & 9 \\
\end{tabular}
   \caption{beschreibung}
   \label{tab:3}
\end{table}
\newpage

\begin{table}[htbp]
   \centering
\begin{tabular}{ l c r }
  1 & 2 & 3 \\
  4 & 5 & 6 \\
  7 & 8 & 9 \\
\end{tabular}
   \caption{beschreibung}
   \label{tab:5}
\end{table}




\begin{figure}[htbp]
   \centering
      \includegraphics{}
   \caption{beschreibung
}
   \label{1}
\end{figure}
\begin{figure}[htbp]
   \centering
      \includegraphics{}
   \caption{beschreibung
}
   \label{2}
\end{figure}



Wir befinden uns auf Seite \label{p1}\pageref{p1} und
deshalb sollen alle Formeln auf dieser Seite auch mit der Zahl \pageref{p1} beginnen.

\begin{align}
a &= b \label{eq:a}
%b &= c
\end{align}


\newpage

Wir befinden uns auf Seite \label{p2}\pageref{p2} und
deshalb sollen alle Formeln auf dieser Seite auch mit der Zahl \pageref{p2} beginnen.

\begin{align}
d &= e  \label{eq:d}\\
f &= g  \label{eq:g}
\end{align}

Siehe \eqref{eq:a}, \eqref{eq:d} and \eqref{eq:g}.

\end{document}
 


Viele Grüße Milo
Private Nachricht senden Benutzer-Profile anzeigen

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.01.2017, 15:38     Titel:
  Antworten mit Zitat      
Ich hatte befürchtet, dass \theabspage problematisch wird. Vielleicht geht es mit \theperpage besser:
Code • Öffne in Overleaf
\documentclass[a4paper,twoside,10pt]{report}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{mwe}
\usepackage{lmodern} %Type1-Schriftart für nicht-englische Texte
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{amsfonts}
\usepackage{perpage}
\MakeSortedPerPage{equation}
\MakeSortedPerPage{figure}
\MakeSortedPerPage{table}


% for equation
\makeatletter
\renewcommand\theequation{\theperpage
  \expandafter\ifx\csname pp@max@equation@\theperpage\endcsname\relax
  \else \expandafter\ifnum\csname pp@max@equation@\theperpage\endcsname>\z@
      .\alph{equation
}%
  \fi\fi}%
   
   
% for figure
\renewcommand*{\thefigure}{%
  \theperpage
  \expandafter\ifx\csname pp@max@figure@\theperpage\endcsname\relax
  \else \expandafter\ifnum\csname pp@max@figure@\theperpage\endcsname>\z@
    .\alph{figure}%
  \fi\fi
}
   
% for table
\renewcommand\thetable{%
  \theperpage
  \expandafter\ifx\csname pp@max@table@\theperpage\endcsname\relax
  \else \expandafter\ifnum\csname pp@max@table@\theperpage\endcsname>\z@
      .\alph{table}%
  \fi\fi}%

\def\pp@ppagectr#1#2#3#4{\@ifundefined{c@pp@a@#1}{}{%
    \expandafter\ifx\csname pp@max@#1@#3\endcsname\relax
      \expandafter\gdef\csname pp@max@#1@#3\endcsname{0}%
    \else
      \global\expandafter\xdef\csname pp@max@#1@#3\endcsname{\the\numexpr
        1+\csname pp@max@#1@#3\endcsname\relax
}%
    \fi
    \def\next{#3}%
    \expandafter\ifx\csname pp@page@#1\endcsname\next
      \addtocounter{pp@a@#1}\@ne
    \else
      \setcounter{pp@a@#1}{\value{pp@r@#1}}%
    \fi
    \global\expandafter\let\csname pp@page@#1\endcsname\next
    \expandafter\pp@labeldef\expandafter
      {\number\value{pp@a@#1}}{#1}{#2}{#3}{#4}}}
\makeatother

\begin{document}
\begin{table}[htbp]
   \centering
   \begin{tabular}{ l c r }
     1 & 2 & 3 \\
     4 & 5 & 6 \\
     7 & 8 & 9 \\
   \end{tabular}
   \caption{beschreibung}
   \label{tab:2}
\end{table}
\begin{table}[htbp]
  \centering
  \begin{tabular}{ l c r }
    1 & 2 & 3 \\
    4 & 5 & 6 \\
    7 & 8 & 9 \\
  \end{tabular}
  \caption{beschreibung}
  \label{tab:1}
\end{table}
\begin{table}[htbp]
  \centering
  \begin{tabular}{ l c r }
    1 & 2 & 3 \\
    4 & 5 & 6 \\
    7 & 8 & 9 \\
  \end{tabular}
  \caption{beschreibung}
  \label{tab:3}
\end{table}
\newpage

\begin{table}[htbp]
   \centering
   \begin{tabular}{ l c r }
     1 & 2 & 3 \\
     4 & 5 & 6 \\
     7 & 8 & 9 \\
   \end{tabular}
   \caption{beschreibung}
   \label{tab:5}
\end{table}

\begin{figure}[htbp]
  \centering
  \includegraphics{example-image}
  \caption{beschreibung}
  \label{1}
\end{figure}
\begin{figure}[htbp]
  \centering
  \includegraphics{example-image-a}
  \caption{beschreibung}
  \label{2}
\end{figure}


Wir befinden uns auf Seite \label{p1}\pageref{p1} und
deshalb sollen alle Formeln auf dieser Seite auch mit der Zahl \pageref{p1} beginnen.

\begin{align}
a &= b \label{eq:a}
%b &= c
\end{align}


\newpage

Wir befinden uns auf Seite \label{p2}\pageref{p2} und
deshalb sollen alle Formeln auf dieser Seite auch mit der Zahl \pageref{p2} beginnen.

\begin{align}
d &= e  \label{eq:d}\\
f &= g  \label{eq:g}
\end{align}

Siehe \eqref{eq:a}, \eqref{eq:d} and \eqref{eq:g} and table~\ref{tab:2} and figure~\ref{1}.

\end{document}
 

Die Warnung bleibt: Ich weiß nicht wirklich, was ich da tue, sondern habe schlicht mit internem Code von Paket auf CTANperpage und etwas Kreativität experimentiert.

milo hirsch
Forum-Newbie
Forum-Newbie

Beiträge: 8
Anmeldedatum: 02.01.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.01.2017, 17:51     Titel:
  Antworten mit Zitat      
Hallo,

bei der Lösung gibt es Probleme bei der Verwendung der Titelseite. Die Unterscheidung ob eine Abbildung oder mehrere Abbildungen pro Seite auftreten verschiebt sich aufgrund der Titelseite um 1. Dementsprechend wird die Nummerierung falsch dargestellt.

Aber durch Verwendung von
Code • Öffne in Overleaf
\theperpage
im oberen Teil und
Code • Öffne in Overleaf
pp@max@#1@#4
anstatt
Code • Öffne in Overleaf
pp@max@#1@#3
im unteren Teil funktioniert es auch dann.

Code • Öffne in Overleaf

\MakeSortedPerPage{equation}
\MakeSortedPerPage{figure}
\MakeSortedPerPage{table}

% for equation
\makeatletter
\renewcommand\theequation{\theperpage
  \expandafter\ifx\csname pp@max@equation@\theperpage\endcsname\relax
  \else \expandafter\ifnum\csname pp@max@equation@\theperpage\endcsname>\z@
      .\alph{equation
}%
  \fi\fi}%
   
   
% for figure
\renewcommand*{\thefigure}{\theperpage
  \expandafter\ifx\csname pp@max@figure@\theperpage\endcsname\relax
  \else \expandafter\ifnum\csname pp@max@figure@\theperpage\endcsname>\z@
    .\alph{figure
}%
  \fi\fi
}
   
% for table
\renewcommand\thetable{\theperpage
  \expandafter\ifx\csname pp@max@table@\theperpage\endcsname\relax
  \else \expandafter\ifnum\csname pp@max@table@\theperpage\endcsname>\z@
      .\alph{table
}%
  \fi\fi}%

\def\pp@ppagectr#1#2#3#4{\@ifundefined{c@pp@a@#1}{}{%
    \expandafter\ifx\csname pp@max@#1@#4\endcsname\relax
      \expandafter\gdef\csname pp@max@#1@#4\endcsname{0}%
    \else
      \global\expandafter\xdef\csname pp@max@#1@#4\endcsname{\the\numexpr
        1+\csname pp@max@#1@#4\endcsname\relax
}%
    \fi
    \def\next{#3}%
    \expandafter\ifx\csname pp@page@#1\endcsname\next
      \addtocounter{pp@a@#1}\@ne
    \else
      \setcounter{pp@a@#1}{\value{pp@r@#1}}%
    \fi
    \global\expandafter\let\csname pp@page@#1\endcsname\next
    \expandafter\pp@labeldef\expandafter
      {\number\value{pp@a@#1}}{#1}{#2}{#3}{#4}}}
\makeatother
 


Vielen Dank für die Hilfe und Geduld.
Milo
Private Nachricht senden Benutzer-Profile anzeigen

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 10.01.2017, 18:27     Titel:
  Antworten mit Zitat      
#4 ist aber die absolute Seite. Das funktioniert also allenfalls in Deinem Fall aber nicht generell. Genau deshalb hatte ich \theabspage verwendet, das aber offenbar nicht expandibel ist.

Ich sehe auch nicht ganz, warum eine Titelseite ein Problem darstellen sollte:
Code • Öffne in Overleaf
\documentclass[a4paper,twoside,10pt]{report}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{mwe}
\usepackage{lmodern} %Type1-Schriftart für nicht-englische Texte
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{amsfonts}
\usepackage{perpage}
\MakeSortedPerPage{equation}
\MakeSortedPerPage{figure}
\MakeSortedPerPage{table}


% for equation
\makeatletter
\renewcommand\theequation{\theperpage
  \expandafter\ifx\csname pp@max@equation@\theperpage\endcsname\relax
  \else \expandafter\ifnum\csname pp@max@equation@\theperpage\endcsname>\z@
      .\alph{equation
}%
  \fi\fi}%
   
   
% for figure
\renewcommand*{\thefigure}{%
  \theperpage
  \expandafter\ifx\csname pp@max@figure@\theperpage\endcsname\relax
  \else \expandafter\ifnum\csname pp@max@figure@\theperpage\endcsname>\z@
    .\alph{figure}%
  \fi\fi
}
   
% for table
\renewcommand\thetable{%
  \theperpage
  \expandafter\ifx\csname pp@max@table@\theperpage\endcsname\relax
  \else \expandafter\ifnum\csname pp@max@table@\theperpage\endcsname>\z@
      .\alph{table}%
  \fi\fi}%

\def\pp@ppagectr#1#2#3#4{\@ifundefined{c@pp@a@#1}{}{%
    \expandafter\ifx\csname pp@max@#1@#3\endcsname\relax
      \expandafter\gdef\csname pp@max@#1@#3\endcsname{0}%
    \else
      \global\expandafter\xdef\csname pp@max@#1@#3\endcsname{\the\numexpr
        1+\csname pp@max@#1@#3\endcsname\relax
}%
    \fi
    \def\next{#3}%
    \expandafter\ifx\csname pp@page@#1\endcsname\next
      \addtocounter{pp@a@#1}\@ne
    \else
      \setcounter{pp@a@#1}{\value{pp@r@#1}}%
    \fi
    \global\expandafter\let\csname pp@page@#1\endcsname\next
    \expandafter\pp@labeldef\expandafter
      {\number\value{pp@a@#1}}{#1}{#2}{#3}{#4}}}
\makeatother

\begin{document}
\title{Title}
\author{Author}
\maketitle

\begin{table}[htbp]
   \centering
   \begin{tabular}{ l c r }
     1 & 2 & 3 \\
     4 & 5 & 6 \\
     7 & 8 & 9 \\
   \end{tabular}
   \caption{beschreibung}
   \label{tab:2}
\end{table}
\begin{table}[htbp]
  \centering
  \begin{tabular}{ l c r }
    1 & 2 & 3 \\
    4 & 5 & 6 \\
    7 & 8 & 9 \\
  \end{tabular}
  \caption{beschreibung}
  \label{tab:1}
\end{table}
\begin{table}[htbp]
  \centering
  \begin{tabular}{ l c r }
    1 & 2 & 3 \\
    4 & 5 & 6 \\
    7 & 8 & 9 \\
  \end{tabular}
  \caption{beschreibung}
  \label{tab:3}
\end{table}
\newpage

\begin{table}[htbp]
   \centering
   \begin{tabular}{ l c r }
     1 & 2 & 3 \\
     4 & 5 & 6 \\
     7 & 8 & 9 \\
   \end{tabular}
   \caption{beschreibung}
   \label{tab:5}
\end{table}

\begin{figure}[htbp]
  \centering
  \includegraphics{example-image}
  \caption{beschreibung}
  \label{1}
\end{figure}
\begin{figure}[htbp]
  \centering
  \includegraphics{example-image-a}
  \caption{beschreibung}
  \label{2}
\end{figure}


Wir befinden uns auf Seite \label{p1}\pageref{p1} und
deshalb sollen alle Formeln auf dieser Seite auch mit der Zahl \pageref{p1} beginnen.

\begin{align}
a &= b \label{eq:a}
%b &= c
\end{align}


\newpage

Wir befinden uns auf Seite \label{p2}\pageref{p2} und
deshalb sollen alle Formeln auf dieser Seite auch mit der Zahl \pageref{p2} beginnen.

\begin{align}
d &= e  \label{eq:d}\\
f &= g  \label{eq:g}
\end{align}

Siehe \eqref{eq:a}, \eqref{eq:d} and \eqref{eq:g} and table~\ref{tab:2} and figure~\ref{1}.

\end{document}
Gibt nach drei LaTeX-Läufen bei mir das korrekte Ergebnis, wenn ich nicht irgend etwas übersehe.

milo hirsch
Forum-Newbie
Forum-Newbie

Beiträge: 8
Anmeldedatum: 02.01.17
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.01.2017, 10:33     Titel:
  Antworten mit Zitat      
Hallo,

bei der mir vorgegebenen Corporate-Design Vorlage scheint das maketitle bzw. thesistitle die Zähler zu manipulieren.
Entweder werden nur Seitenzahlen verwendet, aber keine weitere Unterscheidung. Oder es wird um eine Seite verschoben.
Wobei mit der Kombination aus #4 (absolute Seite) und \theperpage es bisher funktioniert.

Viele Grüße
Milo
Private Nachricht senden Benutzer-Profile anzeigen

Neues Thema eröffnen Neue Antwort erstellen Gehe zu Seite Zurück  1, 2



Options and Permissions
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen
.

goLaTeX ist Teil der goForen
goForen.de goMATLAB.de goLaTeX.de goPCB.de


  Impressum | FAQ | goLaTeX RSS Button RSS-Feed

Copyright © 2008 - 2017 goLaTeX.de