So formatieren Sie Bicaption

So formatieren Sie Bicaption

Ich habe einige Probleme mit der Formatierung des bicaptionPakets und möchte fragen, ob mir jemand ein paar Hinweise zur Lösung geben kann.

Ich schätze, gestern war es zu spät, also erstmal meine liebe Entschuldigung, Axel! Und entschuldige, dass ich kein MWE bereitgestellt habe, das ich jetzt eingefügt habe:

\documentclass[12pt,halfparskip,BCOR0pt,DIV12]{scrartcl}
\usepackage[utf8]{inputenc}               
\usepackage[T1]{fontenc}                 
\usepackage[ngerman]{babel}             
\usepackage[intlimits]{amsmath}
\usepackage[a4paper,left=2.5cm, right=2.5cm,top=2.5cm, bottom=2cm,headsep=0.865cm]{geometry}
\usepackage{graphicx}
\usepackage{bicaption}
\captionsetup[figure][bi]{labelfont=it, font=it,justification=raggedright, singlelinecheck=false, margin={0mm,0mm}}
\captionsetup[figure][bi-first]{name=Bild}
\captionsetup[figure][bi-second]{name=Fig.}
\numberwithin{figure}{section}


\begin{document}

\section{Exemplum}
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.
\begin{figure}[h]
\includegraphics[width=\textwidth]{sample.png}
  \captionsetup{skip=0pt,}  
  \bicaption{Beispieltext}{Sample}  
  \label{fig:Q-pd}
\end{figure}

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.
\end{document}

Ich bin auf zwei große Probleme und eine offene Frage gestoßen:

  1. der Befehl, der sich auf Bi-First bezieht, funktioniert nicht, die Überschrift lautet immer noch „Abbildung“. Warum ist das so?

  2. Bei der ersten Kation "Abbildung" gibt es einen Einzug, den ich nur mit ident=-6ptjeder Beschriftung im Text vermeiden kann. Warum ist das so und wie kann ich den Einzug für Beschriftungen global entfernen? Ich habe versucht, es raggedrightwie hier festgelegt zu verwenden, ohne Wirkung, Raggedrightmit Paket ragged2everursacht es unerwartete Fehler und funktioniert nicht.

  3. Das Format sollte bei gegebenem Versatz (Tabulator) zwischen Typ und Zahl und Text so aussehen, dass die erste Überschrift mit der zweiten Überschrift ausgerichtet ist:

    Bild x.xx:_{tab}_Text
    Abb. x.xx:_{tab}_Text

Wie kann ich einen Abstand zwischen Bildnummer und Bildunterschrift so einstellen, dass die erste und zweite Bildunterschrift zwar ausgerichtet, aber mit einem Versatz versehen sind?

Danke für alle Vorschläge und auch danke, Axel, für dieses tolle Paket!

Antwort1

  1. name=funktioniert (noch) nicht mit Bi-Captions, die von gesteuert werden babel. Wenn Sie den Namen global ändern möchten, verwenden Sie
\addto\captionsngerman{\renewcommand\figurename{Bild}}

stattdessen. Wenn Sie den Namen nur für Bi-Captions ändern möchten, benötigen Sie (derzeit) als Workaround eine Hilfskonstruktion wie diese:

\captionsetup[figure][bi-first]{ngermanname=Bild}
\makeatletter
\DeclareCaptionOption{ngermanname}{%
  \l@addto@macro\captionsngerman{\captionsetup{name={#1}}}}
\makeatother

Aber warum funktioniert es bei englischen Untertiteln? Weil diese Untertitelsprache nicht von gesteuert wird, babelda du dem bicaptionPaket keine zweite Sprache, beispielsweise mit \usepackage[lang=english]{bicaption}oder , zugewiesen hast \captionsetup[bi-second]{lang=english}.

Ich habe gerade ein Ticket ausgefüllt1und wird diesen Fehler in den nächsten Wochen beheben, sodass die oben beschriebene Problemumgehung nicht mehr erforderlich sein wird.

Hintergrund: name=Bildändert die Definition von \figurename, die zur Beschriftung der Beschriftung verwendet wird, aber später bicaptionändert das Paket die Sprache (mit babel) ngermanfür die erste Beschriftung auf , und dies ändert die Definition von \figurenamezurück auf Abbildung. Damit dies funktioniert, muss ich eine spezielle Behandlung der Option name=für Bi-Beschriftungen zu meinembicaption , das Argument muss gespeichert und verwendet werdennachUmschalten der Sprache.

2a. Ich kann das hier nicht reproduzieren. Ist Ihre TeX-Distribution auf dem neuesten Stand? Könnten Sie ein Bild der unerwünschten Einrückung hinzufügen? So sieht es auf meinem PC aus (TeXlive 2015, heute aktualisiert):

Bildbeschreibung hier eingeben

Wenn "Abbildung" (bzw. "Bild") eingerückt ist, kann dies an Leerzeichen liegen, die bei der Spracheinstellung eingefügt wurden. Erweitern Sie \captionsngermanIhr Dokument? Wenn ja, achten Sie auf die unerwünschten Leerzeichen!http://www.komascript.de/signifikanteLeerzeichen(Entschuldigen Sie den deutschen Link, mir ist kein englisches Gegenstück bekannt.)

2b. Das Ändern justification=raggedrightin justification=RaggedRightIhrem Beispieldokument funktioniert auch hier einwandfrei. Welche Fehlermeldung erhalten Sie?

  1. Dies könnte man erreichen, indem man ein eigenes Beschriftungsformat definiert, bei \DeclareCaptionFormatdem die Beschriftung plus Trennzeichen in ein Feld mit fester Breite eingefügt wird, zum Beispiel:
\DeclareCaptionFormat{6cm}{\hbox to 6cm{#1#2\hfill}#3\par}
\captionsetup[figure][bi]{format=6cm}

(6 cm wären viel zu viel, daher müssen Sie diesen Wert Ihren eigenen Bedürfnissen anpassen.)

1 https://sourceforge.net/p/latex-caption/tickets/38/

verwandte Informationen