Margini per la posizione dei sottotitoli in tcolorbox
Mi piacerebbe avere gli stessi margini nel sottotitolo che nella cornice del titolo del mio tcolorbox.
Per impostare il margine nel frame del titolo, ho usato lefttitle=0mm
, ma non ho trovato nulla di correlato allo stile dei sottotitoli. Nel MWE, mi piacerebbe che il "Frame dei sottotitoli" fosse allineato allo stesso modo del Frame del titolo.
\documentclass{article}
\usepackage{tcolorbox}
\begin{document}
\begin{tcolorbox}[title=Title Frame,
lefttitle=0mm,
%left=0mm, % flushes left everything : subtitle and its contents
colback=red!5!white,
colframe=red!75!black,
fonttitle=\bfseries]
This is a \textbf{tcolorbox}.
\tcbsubtitle[before skip=\baselineskip,
halign=left, % does not work
lefttitle=0mm, % does not work either
]%
{Subtitle Frame (margin to be set to 0mm)}
Further text.
\end{tcolorbox}
\end{document}
Il codice seguente riduce bene il margine del frame del titolo, ma non quello del sottotitolo.

Ho provato impostando un tcolorbox senza alcun contenuto (né titolo) e 2 sottotitoli, ma mi mostra uno spazio vuoto prima del primo sottotitolo.
Risposte
Il sottotitolo è un tcolorbox all'interno del tcolorbox principale, con la oversize
proprietà impostata per estendere il nuovo tcolorbox alla larghezza della scatola originale (vedere il manuale del pacchetto a pagina 45). Tuttavia, a quanto pare oversize
non tiene lefttitle
conto.
Una soluzione consiste nell'impostare il margine sinistro del sottotitolo a 0 mm e spostare la barra dei sottotitoli a sinistra di 5 mm (margine di 4 mm e riquadro di 1 mm) e di conseguenza aumentare la dimensione della barra a destra di 4 mm (mi aspetto che sia anche 5mm ma è troppo, non so perché).
MWE:
\documentclass{article}
\usepackage{tcolorbox}
\begin{document}
\begin{tcolorbox}[title=Title Frame,
lefttitle=0mm,
%left=0mm, % flushes left everything : subtitle and its contents
colback=red!5!white,
colframe=red!75!black,
fonttitle=\bfseries,
subtitle style={left=0mm,enlarge left by=-5mm,grow to right by=4mm}
]
This is a \textbf{tcolorbox}.
\tcbsubtitle[before skip=\baselineskip]%
{Subtitle Frame (margin to be set to 0mm)}
Further text.
\end{tcolorbox}
\end{document}
Risultato:

Notare che le impostazioni vengono eseguite con il tasto subtitle style
nella tcolorbox principale, con il risultato che le impostazioni vengono applicate a tutti i sottotitoli nella stessa casella (nel caso ci sia più di 1 sottotitolo). È inoltre possibile applicare le impostazioni ai singoli sottotitoli fornendoli come opzioni per \tcbsubtitle
.