caption für eigene Dokumentenklasse

Fragen und Probleme, die nicht den obigen Kategorien zugeordnet werden können


TinTin82
Forum-Anfänger
Forum-Anfänger
Beiträge: 25
Registriert: Mo 21. Mai 2018, 10:49

caption für eigene Dokumentenklasse

Beitrag von TinTin82 »

Hi,

ich würde gerne die caption Umgebung für meine eigene dokumentenklasse einbinden. Wenn ich folgendes eingebe:

Code: Alles auswählen

\documentclass[twoside]{StdFachbuch}

\usepackage{newfloat}
\usepackage{caption}

\DeclareFloatingEnvironment{table}

\begin{minipage}[c]{0.5\textwidth}
\captionof{table}{Meine Super Tabelle}
\begin{tabular}{|l|r|}
...
bekomme ich folgende Ausgabe:
(d:/0000_Tools/02_Latech/00_TechLive/2018/texlive/texmf-dist/tex/latex/caption/
caption3.sty)

Package caption Warning: Unsupported document class (or package) detected,
(caption) usage of the caption package is not recommended.
See the caption package documentation for explanation.

)
! Undefined control sequence.
\newfloat@setwithin ...apter}\@chapterlistsgap@on
{#1}\newfloat@@setwithin {...
l.18 \DeclareFloatingEnvironment{table}

?

Process has been terminated ...
Leider kann ich mit der Fehlermeldung nur wenig anfangen.
Viele Grüße,
TinTin

Bartman
Forum-Meister
Forum-Meister
Beiträge: 2118
Registriert: Do 16. Jul 2009, 21:41
Wohnort: Hessische Provinz

Beitrag von Bartman »

Du wurdest schon in anderen Themen um ein vollständiges Minimalbeispiel gebeten.

Code: Alles auswählen

\DeclareFloatingEnvironment{table}
Damit versuchst Du, eine Gleitumgebung zu bestimmen, die es schon gibt. Auch das müsste eine Fehlermeldung erzeugen.

TinTin82
Forum-Anfänger
Forum-Anfänger
Beiträge: 25
Registriert: Mo 21. Mai 2018, 10:49

Beitrag von TinTin82 »

Hi Bartman,

danke für die schnelle Hilfe.

Wenn ich:

Code: Alles auswählen

\documentclass[twoside]{StdFachbuch}

%\usepackage{newfloat}
\usepackage{caption}

%\DeclareFloatingEnvironment{table}

\begin{minipage}[c]{0.5\textwidth}
\captionof{table}{Meine Super Tabelle}
\begin{tabular}{|l|r|}
...
Bekomme ich die Fehlermeldung:
! Package caption Error: No float type 'table' defined.

See the caption package documentation for explanation.
Type H <return> for immediate help.
...

l.71 \captionof{table}{
Meine Super Tabelle}
?
Daraus habe ich geschlossen, dass tabular erst definiert werden muss.
Und aus der Dokumentation konnte ich entnehmen, dass man das mit

Code: Alles auswählen

\DeclareFloatingEnvironment{table}
machen könnte.
Wo genau muss ich denn nach der Definition von table suchen ??
Also in welcher LatexDatei ??
Viele Grüße,
TinTin

TinTin82
Forum-Anfänger
Forum-Anfänger
Beiträge: 25
Registriert: Mo 21. Mai 2018, 10:49

Beitrag von TinTin82 »

Okay, die Lösung war recht simpel.
Beim Nachlesen in meinem Latex Buch habe ich einfach das Gleitobjekt wie folgt erzeugt.

Code: Alles auswählen

\usepackage{float}
\usepackage{caption}
\newfloat{table}{tbh}{table}

Ratgeber

Bessere Variante

Beitrag von Ratgeber »

Statt »float« solltest Du »newfloat« (aus dem Paketbündel »caption«) verwenden.

Gast

Beitrag von Gast »

Falls die ominöse StdFachbuch-Klasse KOMA-Script basiert ist oder auf sonstige Weise tocbasic verwendet (was viele Vorteile bei der Verwaltung von Gleitumgebungsverzeichnissen bietet), kann auch einfach \DeclareNewTOC verwendet werden. Damit hat man dann nebenbei Features wie optionale Aufnahme des Verzeichnisses nummeriert oder nicht nummeriert ins Inhaltsverzeichnis, die Möglichkeit zur Codeausführung zwischen Verzeichnisüberschrift und eigentlichem Verzeichnis, Konfigurierbare Verzeichniseinträge etc. Außerdem kann man optional auch eine nicht gleitende Version der Gleitumgebung mit definieren.

Die Verwendung von float hat dagegen auch einen Nachteil: Man kann in einer Gleitumgebung nicht mehr mehrere \caption haben.

Um dir besser helfen zu können, wäre übrigens sinnvoll, immer ein vollständiges Minimalbeispiel anzugeben. Aber das wurde dir ja schon mehrfach gesagt.

Antworten