Viertelseitennummerierung

Viertelseitennummerierung

In Dokumenten des Deutschen Bundestages finden sich Viertelseitenzahlen (z.B. Seite 9686 D für das vierte Viertel der Seite 9686,(Beispiel)). Wie erstelle ich eine solche Nummerierung in LaTeX und integriere sie in das Inhaltsverzeichnis?

Antwort1

Das ist ein sehr interessantes Problem. Ich habe versucht, es in meinem bevorzugten Makropaket, also einfachem TeX, zu lösen. Sie können sich davon inspirieren lassen und Sie (oder jemand anderes) können versuchen, diese Ideen in LaTeX neu zu implementieren.

Wir müssen die \outputRoutine einrichten, um das angegebene Seitendesign zu erhalten. Ich habe das nicht getan (der Einfachheit halber und weil reines TeX nicht das gewünschte Makropaket ist). Ich habe nur eine Seite „manuell“ mit definierten \dopageMakros für Experimente eingerichtet. Aber die Grundprinzipien werden hier gezeigt.

\input opmac

\def\lorem{Lorem ipsum dolor sit amet, consectetuer
  adipiscing elit. Ut purus elit, vestibulum ut, placerat ac,
  adipiscing vitae, felis. Curabitur dictum gravida mauris. Nam arcu
  libero, nonummy eget, consectetuer id, vulputate a, magna. Donec 
  vehicula augue eu neque. Pellentesque habitant morbi tristique   
  senectus et netus et malesuada fames ac turpis egestas. Mauris ut
  leo.}

\splittopskip=12pt  
\long\def\dopage#1{%
   \setbox0=\vbox{\hsize=7cm \emergencystretch=2em \penalty0
                  #1\par\nobreak\vfil\penalty0}
   \setbox1=\vsplit0 to0pt
   \hbox{\vbox to240pt{\hbox{(A)}\vfil\hbox{(B)}\vfil}\kern5pt
      \vbox{\setpartpage{A}%
            \setbox1=\vsplit0 to 120pt
            \edef\tmp{\the\dp1}\box1 \kern-\tmp
            \setpartpage{B}%  
            \vsplit0 to120pt}%
      \kern5pt\vrule\kern5pt
      \vbox{\setpartpage{C}%
            \setbox1=\vsplit0 to 120pt
            \edef\tmp{\the\dp1}\box1 \kern-\tmp
            \setpartpage{D}%  
            \vsplit0 to120pt}%
    \kern5pt\vbox to240pt{\hbox{(C)}\vfil\hbox{(D)}\vfil}}
}
\def\setpartpage#1{\wref\addto{\noexpand\toclist{\def\noexpand\partpage{#1}}}}
\def\pglink#1{#1 \partpage}

\maketoc 
\vskip1cm

\dopage{
  \sec First item

  \lorem

  \sec Second item

  \lorem \par \lorem

  \sec Third item 

  \lorem
}
\bye

Das Ergebnis ist:

Viertelseite

Erklärung: Wir müssen \vsplitden Seiteninhalt in vier Teile aufteilen, die ersten beiden Teile bilden die erste Spalte und die zweiten beiden Teile die zweite Spalte. Dann müssen wir \writein die REF-Datei (oder AUX- oder TOC-Datei, wenn LaTeX verwendet wird) die Informationen über den Teil der Seite vor jedem Teil einfügen. Dies wird per \setpartpageMakro erledigt. Beispielsweise haben wir mit OPmac den folgenden Inhalt in der REF-Datei:

 %% OPmac - REF file
\Xpage{1}
\addto\toclist {\def \partpage {A}}
\Xtoc{1}{\rm }{1}{First item }{1}
\addto\toclist {\def \partpage {B}}
\Xtoc{1}{\rm }{2}{Second item }{1}
\addto\toclist {\def \partpage {C}}
\addto\toclist {\def \partpage {D}}
\Xtoc{1}{\rm }{3}{Third item }{1}

Dies bedeutet, dass \toclistnach dem Lesen der REF-Datei Folgendes eingeschlossen wird:

\def\partpage {A}
\tocline{1}{\rm}{1}{First item }{1} % {level}{font}{sec number}{text}{page}
\def\partpage {B}
\tocline{1}{\rm}{2}{Second item }{1}
\def\partpage {C}
\def\partpage {D}
\tocline{1}{\rm}{3}{Third item }{1}

Jetzt müssen wir nur noch neu definieren \tocline, damit nicht nur #5(die Seitennummer), sondern \partpageauch die gedruckt werden. Ich habe das gemacht, indem ich neu definiert habe \pglink, was in Tocline zum Drucken der Seitenzahl verwendet wird. Das ist nicht sehr konzeptionell, weil die \hyperlinkshier kaputt sind, aber wir verwenden das nur als experimentellen Code.

verwandte Informationen