goLaTeX - Mein LaTeX-Forum

Mein LaTeX-Forum


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


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

2-spaltiges Buch mit (gleitenden) Textboxen und Verzeichnis

 

IRM
Forum-Anfänger
Forum-Anfänger

Beiträge: 29
Anmeldedatum: 11.02.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.07.2018, 11:19     Titel: 2-spaltiges Buch mit (gleitenden) Textboxen und Verzeichnis
  Antworten mit Zitat      
Guten Morgen,

ich habe zuerst in diesem Thema https://golatex.de/viewtopic.php?p=101296#101296 meine Frage gestellt. Aber da ich etwas andere Anforderungen habe, habe ich nun diese neue Thema eröffnet. Leider weiß ich nicht wie ich es realisieren soll.
- Es handelt sich um ein 2-spaltiges Buch
- Ich hättte gerne gleitende Textboxen mit der Breite einer Spalte
- Die Textboxen sollen sich über zwei Spalten erstrecken können und über mehrere Seiten
- Die Textboxen sollen umrahmt und grau hinterlegt sein
- Alle Textboxen sollen mit Namen und Seitenzahl in einem Verzeichnis aufgelistet sein

Hier das von mir leicht modifizierte Beispiel aus dem anderen Thema:

Code • Öffne in Overleaf

\documentclass[paper = 170mm:220mm, DIV=17, headinclude, twoside, fontsize=8pt, BCOR=19mm, headsepline, parskip=half, headings=small, toc=flat, twocolumn]{scrbook}
\usepackage[ngerman]{babel}

%% Neue (Gleit-)Umgebung für Boxen
\usepackage{newfloat}
\DeclareFloatingEnvironment[
  fileext=lob,
  listname={Verzeichnis der Exkurse},
  name=Exkurs,
%  within=chapter
]{xbox}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%% Anpassung der Beschriftung für die neue (Gleit-)Umgebung
\usepackage{caption}
\captionsetup[xbox]{
  singlelinecheck=off,
  labelfont={bf,footnotesize
},
  textfont={bf,footnotesize},
  labelsep=endash,
  aboveskip=0pt,
  belowskip=1ex
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\usepackage[svgnames]{xcolor}
\usepackage[framemethod=TikZ]{mdframed}
\mdfdefinestyle{remark}{%
  linewidth=1pt,
  backgroundcolor=LightGrey%  % Die Farbe im Hintergrund (vgl. Anleitung von »xcolor«, Abschnitt 4.3)
}
\usepackage{wrapfig}
\usepackage{lmodern}
\usepackage{microtype}
\usepackage{blindtext}

\begin{document}
  \listofxboxs  % Verzeichnis aller im Dokument enthaltenen Boxen

  \begin{wrapfigure}{m}{0.5\textwidth}
    \vskip-0.75\baselineskip
    \footnotesize
    \begin{mdframed}[style=remark]
      \captionof{xbox}{Autos}
      \label{box:small-rnas}
      \blindtext[3]
     \end{mdframed}
  \end{wrapfigure}

  \blindtext[8]

\end{document}
 
[/code]
Private Nachricht senden Benutzer-Profile anzeigen

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.07.2018, 12:38     Titel:
  Antworten mit Zitat      
Das derzeit beste Paket für farbige Boxen dürfte tcolorbox sein, das auch sehr aktiv gepflegt wird. Trotzdem: Das, was du da forderst, wird vollautomatisch nicht gehen. Zweispaltiger Satz ist nicht gerade eine Stärke von LaTeX. Das gilt erst recht, wenn man dazu auch noch Gleitumgebungen mal über eine, mal über zwei Spalten und sogar eigentlich nicht gleitend und über mehrere Seiten haben will.

Die Verwendung von umbrechbaren Boxen wie mdframed innerhalb von Spezialumgebungen wie figure oder wrapfigure ist ohnehin problematisch (bis unsinnig). Das dann noch mit zweispaltigem Satz kombinieren zu wollen, ist mehr als gewagt.

Du solltest dich bei so einem Vorhaben auf jeden Fall auf viel manuelle Satzarbeit einstellen – min. so viel bei Verwendung eines herkömmlichen DTP-Programms.

IRM
Forum-Anfänger
Forum-Anfänger

Beiträge: 29
Anmeldedatum: 11.02.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.07.2018, 12:56     Titel:
  Antworten mit Zitat      
Danke für Deine Antwort.
Naja die manuelle Satzarbeit sollte ja durch LaTeX wegfallen Wink bei > 400 Seiten würde ich das zeitlich auch nicht packen.. Wenn ich erstmal auf das Gleiten verzichte um mir den Ärger zu sparen und es zB. sowie unten realisiere, wie kann ich dann ein Verzeichnis von diesen Boxen erstellen?
Die rein grauen Textboxen haben zumindest den Vorteil, dass sie nicht auf eine Spalte oder Seite begrenzt sind.

Code • Öffne in Overleaf

\documentclass[paper = 170mm:220mm, DIV=17, headinclude, twoside, fontsize=8pt, BCOR=19mm, headsepline, parskip=half, headings=small, toc=flat, twocolumn]{scrbook}
\usepackage[ngerman]{babel}

\usepackage{microtype}
\usepackage{blindtext}
\usepackage{xcolor}
\usepackage{framed}
\definecolor{shadecolor}{gray}{.9}

\newcommand{\Exkurs}[2]{%
   \begin{shaded*}
      \textbf{Exkurs: #1}
        \\
      #2
   \end{shaded*}
   \color{black} %sonst ist der Text danach grau. Warum?
}

\begin{document}
 
  \blindtext[2]
   \Exkurs{mein erster}{\blindtext[5]}

  \blindtext[8]

\end{document}
 
Private Nachricht senden Benutzer-Profile anzeigen

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 07.07.2018, 18:02     Titel:
  Antworten mit Zitat      
Für das Anlegen und Füllen neuer Verzeichnisse siehe \DeclareNewTOC und \captionof in der KOMA-Script-Anleitung oder im KOMA-Script-Buch.

IRM
Forum-Anfänger
Forum-Anfänger

Beiträge: 29
Anmeldedatum: 11.02.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.07.2018, 23:31     Titel:
  Antworten mit Zitat      
So hier nur mein erster Versuch:

Code • Öffne in Overleaf

\documentclass[paper = 170mm:220mm, DIV=17, headinclude, twoside, fontsize=8pt, BCOR=19mm, headsepline, parskip=half, headings=small, toc=flat, twocolumn]{scrbook}
\usepackage[ngerman]{babel}

\usepackage{blindtext}
\usepackage{xcolor}
\usepackage{framed}
\usepackage{tocbasic}

\definecolor{shadecolor}{gray}{.9}

\newcommand{\Exkurs}[2]{%
\addxcontentsline{tod}{todo}{#1}
\begin{shaded*}
      \textbf{Exkurs: #1}
        \\
      #2
   \end{shaded*}
   \color{black}
}

\DeclareNewTOC[%
  type=todo,% bestimmt u. a. \listoftodos und zweites Argument von \addxcontentsline
  listname={Verzeichnis der Exkurse}% Titel des Verzeichnisses
]{tod}


\begin{document}
   \listoftodos
   \blindtext[2]
    \Exkurs{mein erster}{\blindtext[5]}
    \Exkurs{zweiter}{\blindtext[3]}
    \blindtext[8]
\end{document}
 


Zuletzt bearbeitet von IRM am 11.07.2018, 18:51, insgesamt einmal bearbeitet
Private Nachricht senden Benutzer-Profile anzeigen

IRM
Forum-Anfänger
Forum-Anfänger

Beiträge: 29
Anmeldedatum: 11.02.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.07.2018, 18:50     Titel:
  Antworten mit Zitat      
Wirklich, sorry für die Glaskugelfrage aber ich kriege es nicht hin.
Ich mein Minimalbeispiel in mein eigentliches Dokument integriert. Es lässt sich fehlerfrei erzeugen aber mein Verzeichnis hat nur die Überschrift und keinen Inhalt. Auch die entsprechende Datei für das Verzeichnis wird nicht generiert?
Was kann da los sein?

Edit 13.07.18

Ich habe die Ursache gefunden. Um ein 2-spaltiges Inhaltsverzeichnis zu erzeugen verwende ich
Code • Öffne in Overleaf
 \usepackage[toc]{multitoc}

Wenn ich das rausnehme wird mein neues Verzeichnis generiert.
Was kann ich machen um trotzdem mein Inhaltsverzeichnis 2-spaltig hinzubekommen?

Hier das Minimalbeispiel mit
Code • Öffne in Overleaf
 \usepackage[toc]{multitoc}
:
Code • Öffne in Overleaf

\documentclass[paper = 170mm:220mm, DIV=17, headinclude, twoside, fontsize=8pt, BCOR=19mm, headsepline, parskip=half, headings=small, toc=flat, twocolumn]{scrbook}
\usepackage[ngerman]{babel}

\usepackage{blindtext}
\usepackage{xcolor}
\usepackage{framed}
\usepackage{tocbasic}

\usepackage[toc]{multitoc}

\definecolor{shadecolor}{gray}{.9}

\newcommand{\Exkurs}[2]{%
\addxcontentsline{tod}{todo}{#1}
\begin{shaded*}
      \textbf{Exkurs: #1}
        \\
      #2
   \end{shaded*}
   \color{black}
}

\DeclareNewTOC[%
  type=todo,% bestimmt u. a. \listoftodos und zweites Argument von \addxcontentsline
  listname={Verzeichnis der Exkurse}% Titel des Verzeichnisses
]{tod}

\begin{document}
   \listoftodos
   \blindtext[2]
    \Exkurs{mein erster}{\blindtext[5]}
    \Exkurs{zweiter}{\blindtext[3]}
    \blindtext[8]
\end{document}
 


In dem Verzeichnis in meinem Buch habe ich unterschiedlich viele Leerzeilen und in der "tod" Datei entsprechend unterschiedlich viele
Code • Öffne in Overleaf
\addvspace {10\p@ }
Anweisungen. Was kann ich machen um die zu vermeiden?

Nochmals vielen Dank für die Hilfe!
Private Nachricht senden Benutzer-Profile anzeigen

IRM
Forum-Anfänger
Forum-Anfänger

Beiträge: 29
Anmeldedatum: 11.02.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.07.2018, 07:00     Titel:
  Antworten mit Zitat      
Mit
Code • Öffne in Overleaf
 \usepackage[toc]{multitoc}
ist das Verzeichnis leer und ich bekomme folgende Warnungen:

Zitat:
/usr/share/texlive/texmf-dist/tex/latex/koma-script/typearea.sty:
Package typearea Warning: Maybe no optimal type area settings!
(typearea) The maximum limit of line width is about 35%
(typearea) larger than the heuristically detected line width.
(typearea) You may e.g. increase DIV, decrease fontsize
(typearea) or change the papersize.
/usr/share/texlive/texmf-dist/tex/latex/tools/multicol.sty:134:
Package multicol Warning: May not work with the twocolumn option on input line
134.

Es wäre toll wenn mir ein Latex-Profi helfen könnte das hinzukriegen. Danke!
Private Nachricht senden Benutzer-Profile anzeigen

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.07.2018, 07:53     Titel:
  Antworten mit Zitat      
multitoc (ein Paket, an dem seit 1999 nichts mehr getan wurde), ist mit KOMA-Script-Klassen inkompatibel, wird aber auch gar nicht benötigt, da man einfach multicol laden kann und dann mit KOMA-Script-Mitteln per
Code • Öffne in Overleaf
\BeforeStartingTOC[toc]{\begin{multicols}{2}}
\AfterStartingTOC[toc]{\end{multicols}}
das Inhaltsverzeichnis zweispaltig machen kann. Wenn man ein halbwegs konsistentes Dokument haben will, muss man allerdings alle gleichartigen Verzeichnisse zweispaltig setzen und lässt dann [toc] weg.

Die multicol-Warnung ist ja wohl eindeutig. Du kannst nicht zweispaltig von twocolumn mit multicols kombinieren. Ich vermute, dass das ein weiteres Problem von multitoc ist. Wenn Du das mit einem tatsächlich minimalen Beispiel nachvollziehen kannst, melde es dem Autor.

KOMA-Script-Klassen laden übrigens selbst schon tocbasic.

Die \addvspace-Frage verstehe ich nicht. Das kann ich an dem gezeigten Beispiel auch nicht nachverfolgen. Außerdem sind aufeinander folgende \addvspace mit gleichem (oder absteigendem) Wert AFAIK ohnehin kein Problem.

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.07.2018, 08:07     Titel:
  Antworten mit Zitat      
Code • Öffne in Overleaf
\documentclass[paper=170mm:220mm,twocolumn, DIV=17, headinclude, fontsize=8pt,% Wer soll das denn lesen können!
BCOR=19mm, headsepline, parskip=half, headings=small, toc=flat]{scrbook}
\usepackage[ngerman]{babel}

\usepackage{blindtext}
\usepackage{xcolor}
\usepackage{framed}
\usepackage{multicol}

\definecolor{shadecolor}{gray}{.9}

\newcommand{\Exkurs}[2]{%
\addxcontentsline{tod}{todo}{#1}
\begin{shaded*}
      \textbf{Exkurs: #1}
        \\*
      #2
   \end{shaded*}
   \color{black}
}

\BeforeStartingTOC{\begin{multicols}{2}}
\AfterStartingTOC{\end{multicols}}

\DeclareNewTOC[%
  type=todo,% bestimmt u. a. \listoftodos und zweites Argument von \addxcontentsline
  tocentryindent=0pt,
  listname={Verzeichnis der Exkurse}% Titel des Verzeichnisses
]{tod}

\begin{document}
  \tableofcontents
   \listoftodos
  \chapter{Test}
   \blindtext[2]
    \Exkurs{mein erster}{\blindtext[5]}
    \Exkurs{zweiter}{\blindtext[3]}
    \blindtext[8]
    \blinddocument
\end{document}

Bemerkung: 8pt ist als Schriftgröße für ein Dokument vollkommen ungeeignet, weil viel zu klein. Man sollte bei der Grundschriftgröße niemals unter 10pt gehen. Wenn ich mehr als zwei Zeilen von so klein gesetztem Text lesen soll, wird das trotz Lesebrille so anstrengend, dass ich das in den Müll werfe. Unzumutbar!

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 16.07.2018, 08:20     Titel:
  Antworten mit Zitat      
Anonymous hat Folgendes geschrieben:
multitoc (ein Paket, an dem seit 1999 nichts mehr getan wurde), ist mit KOMA-Script-Klassen inkompatibel

Das ist IMHO nicht das tatsächliche Problem. Stattdessen ist es inkompatibel mit allen Paketen, die weitere Gleitumgebungsverzeichnisse bereitstellen, weil es \addcontentsline so umdefiniert, dass diese Anweisung nur noch in die Hilfsdateien mit Endung toc, lof oder lot schreiben kann und das auch nur, wenn für diese per Option zweispaltiger Satz aktiviert ist:
Code • Öffne in Overleaf
\documentclass{article}

\usepackage[toc]{multitoc}

\begin{document}
\tableofcontents
\listoffigures
\section{This will be in the table of contents}
\begin{figure}
  \caption{But this will not be in the list of figures}
\end{figure}
\end{document}
 

Ich halte das für einen Bug. Du solltest den an den Autor melden!

Neues Thema eröffnen Neue Antwort erstellen Gehe zu Seite 1, 2  Weiter



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


  Datenschutzerklärung | Impressum | FAQ | goLaTeX RSS Button RSS-Feed

Copyright © 2008 - 2018 goLaTeX.de