Anzeige:
Ergebnis 1 bis 6 von 6

Thema: Farbig hinterlegte Captions (wechsel von Caption2 aud Caption)

  1. #1
    Registrierter Benutzer
    Registriert seit
    08.02.2012
    Beiträge
    48

    Farbig hinterlegte Captions (wechsel von Caption2 aud Caption)

    Hallo Zusammen,
    Ich möchte, dass Bildunterschriften über die ganze Breite des Bildes mit einem farbigen Kasten hinterlegt sind und den Stil „hang“ haben.

    Mit dem alten Caption2 Paket war das kein Problem: Die Anweisung:
    Code:
    \newcaptionstyle{buntneu}{ \colorbox[cmyk]{0.15, 0.1, 0.1,0.01} {\parbox{\hsize} {\usecaptionstyle{hang}}}}
    \renewcommand\captionfont{ \sf}
    \renewcommand\captionlabelfont{ \sf \bf}
    \captionstyle{buntneu}
    hat funktioniert.

    Leider schaffe ich die Umstellung auf das gültige Caption Paket nicht. Ich schaffe es nicht, den farbigen Kasten, eine hang-Formatierung und singlelinecheck=true gleichzeitig hinzubekommen.

    Hat jemand eine Idee?

    Vielen Dank!

    Manfred

  2. #2
    Registrierter Benutzer Avatar von sommerfee
    Registriert seit
    02.07.2006
    Beiträge
    1.603
    Zitat Zitat von msthab Beitrag anzeigen
    Hat jemand eine Idee?
    Idee #1:

    Ein eigenes caption-Format basteln, wo man die "hang"- und "singlelinecheck"-Geschichte selber realisieren muß. (Bad idea!) Könnte man vereinfachen, indem man interne Makros des caption-Paketes (wie \caption@applyfont etc.) dafür verwendet, möchte man aber nicht wirklich.

    Idee #2:

    Einfach caption2 weiterverwenden. caption2 ist seit Version 2.2 (2007/04/06) nicht mehr so "böse" wie in der Doku verkündet, es setzt seit dieser Version auf das gleiche Basispaket (=caption3) auf wie das caption-Paket. Daher funktioniert sogar ab dieser Version die Zusammenarbeit mit dem subfig-Paket, zumindest wenn man letzteres mit "caption=false" lädt. Und viele \DeclareCaptionXxx-Befehle funktionieren seitdem auch mit caption2, ebenso \captionsetup.

    Dies ist natürlich eine blöde Idee, wenn man gerne Features des neuen caption-Paketes verwenden möchte. Ein Konzept, wie man caption2 so umstrickt, daß es nicht nur auf dem gleichen Basispaket aufbaut, sondern auf dem regulären caption-Paket, habe ich schon seit über 4 Jahren in der Schublade (Version 2.2 war also nur der erste Schritt in diese Richtung), bin aber bisher nicht dazu gekommen, es umzusetzen. (Es stellt sich nach all den Jahren auch die Frage, ob so ein Schritt nicht hinfällig geworden ist. Das alternative Konzept, caption2 einfach als prähistorischen Sondermüll zu deklarieren scheint ja auch zu funktionieren )

    Idee #3 (dazu muß man dummerweise entweder Axel Sommerfeldt heißen oder in den Quellen von caption3.sty wühlen):

    Ab caption.sty v3.1f:
    Code:
    - Hack entfernt, da zum subfig-Paket inkompatibel -
    Ab caption.sty v3.3:
    Code:
    \documentclass{article}
    
    \usepackage{xcolor}
    
    \usepackage{caption}
    \DeclareCaptionBox{buntneu}{%
      \colorbox[cmyk]{0.15, 0.1, 0.1,0.01}{\parbox{#1}{#2}}}
    \captionsetup{box=buntneu,format=hang,font=sf,labelfont=bf}
    
    \begin{document}
    
    \begin{figure}
    \caption{Blah!}
    \end{figure}
    \begin{figure}
    \caption{Blah blah blah blah blah blah blah blah blah blah blah
     blah blah blah blah blah blah blah blah blah blah blah blah blah
     blah blah blah blah blah blah\ldots}
    \end{figure}
    
    \end{document}
    (Die Version 3.3 liegt z.Z. nur auf meiner Festplatte, die Veröffentlichung ist für die nächsten Wochen geplant.)
    Geändert von sommerfee (10-02-2012 um 10:27 Uhr) Grund: Hack entfernt, da zum subfig-Paket inkompatibel

  3. #3
    Registrierter Benutzer
    Registriert seit
    08.02.2012
    Beiträge
    48

    Danke

    Hallo sommerfee,

    Vielen Dank für die ausführliche Antwort.

    Die Idee #3 mit "caption.sty v3.1f" sieht genial aus, funktioniert bei mir aber leider nur bedingt. Bei "einfachen" Bildern super, sobald ich ein \subfloat habe (ich arbeite mit Lynx), steigt LaTex mit riesigen Fehlermeldungen aus . Bei caption2 hats funktioniert.

    Gruß & Dank

    Manfred

  4. #4
    Registrierter Benutzer Avatar von sommerfee
    Registriert seit
    02.07.2006
    Beiträge
    1.603
    Zitat Zitat von msthab Beitrag anzeigen
    Bei "einfachen" Bildern super, sobald ich ein \subfloat habe (ich arbeite mit Lynx), steigt LaTex mit riesigen Fehlermeldungen aus .
    Kein Wunder, das subfig-Paket verwendet die gleichen Funktionen wie das caption-Paket, und da haben wir gerade drin herumgepfuscht. Davon ab ist das subfig-Paket nur an das caption-Paket 3.0 angepasst, und deswegen muß man viele Dinge dort per Hand nachrüsten, wenn es mit Sachen aus caption 3.1, 3.2 oder 3.3 klarkommen soll.

    Mein Vorschlag: Behalte caption2, oder warte auf caption 3.3. Dort könnte man dann das subfig-Paket mit
    Code:
    \captionsetup[subfloat]{box=parbox}
    bändigen.

    (Das subcaption-Paket braucht natürlich keine solche Extrawurst.)

  5. #5
    Registrierter Benutzer
    Registriert seit
    08.02.2012
    Beiträge
    48

    Smile

    Alles klar,

    dann bleibe ich vorerst bei caption2.sty

    Noch einmal ganz herzlichen Dank für die ausführliche Hilfe!!!!

  6. #6
    Registrierter Benutzer Avatar von sommerfee
    Registriert seit
    02.07.2006
    Beiträge
    1.603
    Update: caption v3.3 ist endlich verfügbar, dort funktioniert es dann so:
    Code:
    \documentclass{article}
    
    \usepackage{xcolor}
    \definecolor{buntneu}{cmyk}{0.15, 0.1, 0.1,0.01}
    
    \usepackage[box=colorbox,boxcolor=buntneu,format=hang,font=sf,labelfont=bf]{caption}
    \usepackage{subcaption}
    
    \begin{document}
    
    \begin{figure}
      \centering
      \subcaptionbox{A}{Test!}
      \caption{Blah!}
    \end{figure}
    
    \begin{figure}
      \caption{Blah blah blah blah blah blah blah blah blah blah blah
       blah blah blah blah blah blah blah blah blah blah blah blah blah
       blah blah blah blah blah blah\ldots}
    \end{figure}
    
    \end{document}
    beziehungsweise:
    Code:
    \documentclass{article}
    
    \usepackage{xcolor}
    \definecolor{buntneu}{cmyk}{0.15, 0.1, 0.1,0.01}
    
    \usepackage[box=colorbox,boxcolor=buntneu,format=hang,font=sf,labelfont=bf]{caption}
    \usepackage[box=parbox]{subfig}
    
    \begin{document}
    
    \begin{figure}
      \centering
      \subfloat[A]{Test!}
      \caption{Blah!}
    \end{figure}
    
    \begin{figure}
      \caption{Blah blah blah blah blah blah blah blah blah blah blah
       blah blah blah blah blah blah blah blah blah blah blah blah blah
       blah blah blah blah blah blah\ldots}
    \end{figure}
    
    \end{document}
    Geändert von sommerfee (10-01-2013 um 08:48 Uhr)

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •