Überarbeitungsverlauf[Zurück]
Klicke auf Einblenden/Ausblenden von Überarbeitungen 5

13 Sep '16, 07:58

saputello's gravatar image

saputello
11.1k174365

`\AtBeginEnvironment` führt den zusätzlichen Code nach dem Öffnen der zugehörigen Gruppe aber vor dem `\begin`-Code der Umgebung aus. Du hast hier also wieder die Gleitumgebung [Gleitumgebung in der `\tcolorbox` statt umgekehrt. umgekehrt](http://texwelt.de/wissen/fragen/18390/wie-bekomme-ich-ganze-umgebungen-in-eine-colorbox). Siehe `float` und `blend into` etc. in der `tcolorbox`-Anleitung wie das mit den Gleitumgebungen korrekt funktioniert, beispielsweise so: \documentclass{article} \usepackage[ngerman]{babel} \usepackage{xcolor} \usepackage{graphicx} \usepackage{tcolorbox} \tcbset{colframe=gray, colback=yellow!20,} \newtcolorbox[blend into=figures]{boxedfigure}[2][]{float=tbp,title={#2},capture=hbox,every float=\centering} \begin{document} \begin{boxedfigure}[label=fig:Bild]{Bildunterschrift} \includegraphics[scale=0.6]{example-image-a} \end{boxedfigure} \end{document} ![gleitende tcolorbox-Umgebung][1] Eine andere Möglichkeit besteht darin, die interne `@foat`-Umgebung von LaTeX zu patchen, die im einspaltigen Satz von allen Gleitumgebungen verwendet wird. Dabei ist aber zu beachten, dass diese Umgebung in der Regel intern nicht mit `\begin{@float}` und `\end{@float}` aufgerufen wird, sondern mit `\@float` und `\end@float` und daher direkt diese Anweisungen geändert werden müssen: \documentclass{article} \usepackage[ngerman]{babel} \usepackage{xcolor} \usepackage{graphicx} \usepackage{tcolorbox} \tcbset{colframe=gray, colback=yellow!20,} \usepackage{etoolbox} \makeatletter \pretocmd{\@float}{\newpage}{}{} % Problem hier ..... \apptocmd{\@float}{\begin{tcolorbox}}{}{} \pretocmd{\end@float}{\end{tcolorbox}}{}{} % ..... \apptocmd{\end@float}{\clearpage}{}{} \makeatother \begin{document} \begin{figure}\label{fig:Bild} \centering \includegraphics[scale=0.6]{example-image-a} \caption{Bildunterschrift} \end{figure} \begin{table} \begin{tcolorbox} \label{tab:Tabelle} \centering\Huge \caption{Tabellen\"uberschrift} \begin{tabular}{c|c|c} A & B & C \\ \hline X & Y & Z \\ \end{tabular} \end{tcolorbox} \end{table} \end{document} ![gepatchte Gleitumgebung in einer tcolorbox][2] Dass in diesem Beispiel die Tabelle nun doppelt umrandet ist, ist korrekt, da hier nun eine explizite `tcolorbox` in der impliziten `tcolorbox` der Gleitumgebung `@float` gesetzt wird. [1]: http://texwelt.de/wissen/upfiles/test6_12.png [2]: http://texwelt.de/wissen/upfiles/test7_9.png
Klicke auf Einblenden/Ausblenden von Überarbeitungen 4

13 Sep '16, 07:56

saputello's gravatar image

saputello
11.1k174365

`\AtBeginEnvironment` führt den zusätzlichen Code nach dem Öffnen der zugehörigen Gruppe aber vor dem `\begin`-Code der Umgebung aus. Du hast hier also wieder die Gleitumgebung in der `\tcolorbox` statt umgekehrt. Siehe `float` und `blend into` etc. in der `tcolorbox`-Anleitung wie das mit den Gleitumgebungen korrekt funktioniert, beispielsweise so: \documentclass{article} \usepackage[ngerman]{babel} \usepackage{xcolor} \usepackage{graphicx} \usepackage{tcolorbox} \tcbset{colframe=gray, colback=yellow!20,} \newtcolorbox[blend into=figures]{boxedfigure}[2][]{float=tbp,title={#2},capture=hbox,every float=\centering} \begin{document} \begin{boxedfigure}[label=fig:Bild]{Bildunterschrift} \includegraphics[scale=0.6]{example-image-a} \end{boxedfigure} \end{document} ![gleitende tcolorbox-Umgebung][1] Eine andere Möglichkeit besteht darin, die interne `@foat`-Umgebung von LaTeX zu patchen, die im einspaltigen Satz von allen Gleitumgebungen verwendet wird. Dabei ist aber zu beachten, dass diese Umgebung in der Regel intern nicht mit `\begin{@float}` und `\end{@float}` aufgerufen wird, sondern mit `\@float` und `\end@float` und daher direkt diese Anweisungen geändert werden müssen: \documentclass{article} \usepackage[ngerman]{babel} \usepackage{xcolor} \usepackage{graphicx} \usepackage{tcolorbox} \tcbset{colframe=gray, colback=yellow!20,} \usepackage{etoolbox} \makeatletter \pretocmd{\@float}{\newpage}{}{} % Problem hier ..... \apptocmd{\@float}{\begin{tcolorbox}}{}{} \pretocmd{\end@float}{\end{tcolorbox}}{}{} % ..... \apptocmd{\end@float}{\clearpage}{}{} \makeatother \begin{document} \begin{figure}\label{fig:Bild} \centering \includegraphics[scale=0.6]{example-image-a} \caption{Bildunterschrift} \end{figure} \begin{table} \begin{tcolorbox} \label{tab:Tabelle} \centering\Huge \caption{Tabellen\"uberschrift} \begin{tabular}{c|c|c} A & B & C \\ \hline X & Y & Z \\ \end{tabular} \end{tcolorbox} \end{table} \end{document} ![gepatchte Gleitumgebung in einer tcolorbox][2] Dass in diesem Beispiel die Tabelle nun doppelt umrandet ist, ist korrekt, da hier nun eine explizite `tcolorbox` in der impliziten `tcolorbox` der Gleitumgebung `@float` gesetzt wird. [1]: http://texwelt.de/wissen/upfiles/test6_12.pnghttp://texwelt.de/wissen/upfiles/test6_12.png [2]: http://texwelt.de/wissen/upfiles/test7_9.png
Klicke auf Einblenden/Ausblenden von Überarbeitungen 3

13 Sep '16, 07:45

saputello's gravatar image

saputello
11.1k174365

Klicke auf Einblenden/Ausblenden von Überarbeitungen 2

13 Sep '16, 07:36

saputello's gravatar image

saputello
11.1k174365

Klicke auf Einblenden/Ausblenden von Überarbeitungen 1

13 Sep '16, 07:36

saputello's gravatar image

saputello
11.1k174365

Willkommen, erstes Mal hier? Schau mal unter FAQ!

×