Wie kann ich erreichen, dass `\captionof`s eingefärbt werden, wenn sie sich in `\makenote`s befinden?

Wie kann ich erreichen, dass `\captionof`s eingefärbt werden, wenn sie sich in `\makenote`s befinden?

Ich kann mein \captionofs blau machen.
Ich kann mein \makenotes blau machen.
Aber egal, was ich versuche, ich kriege das \captionofs in \makenotes anscheinend nie blau.

Beispiel

\documentclass[]{scrbook}
\usepackage{graphicx}
\usepackage{xcolor}

\usepackage{caption}%
\captionsetup{compatibility=false}%

\usepackage{scrlayer-scrpage}
\usepackage{scrlayer-notecolumn} %must be loaded ``Lastest''
\RedeclareNoteColumn[font = \color{blue}]{marginpar} %default

\DeclareCaptionFont{bluecaptionfont}{\color{blue}}
\captionsetup{font={bluecaptionfont}, labelfont=bluecaptionfont}

\begin{document}

    here is the main text
    \makenote*{
        \includegraphics[width=3cm]{example-grid-100x100pt}
        \captionof{figure}{This should be blue}
    }

    \begin{minipage}{0.5\textwidth}
        \includegraphics[width=8cm]{example-grid-100x100pt}
        \captionof{figure}{Normal captionof's are blue}
    \end{minipage}

    \makenote*{
        Normal notes are blue
    }
\end{document}

Entfernt verwandt:Wie füge ich vspaces in die Randnotiz einer Scrlayer-Notecolumn ein?

Ausgaben

Screenshot des Ausgabedokuments

Antwort1

scrlayer-notecolumnv0.2.3085 vondas KOMA-Script-Quellcode-Repository auf SourceForgeunterstützt bereits Farben in Notizspalten mit LuaLaTeX oder PDFLaTeX (aber nicht mit XeLaTeX). Das Beispiel aus der Frage ergibt also:

Ergebnis von scrlayer-notecolumn v0.2.3085

Antwort2

\makenote*wird neu definiert \color, sodass nichts passiert und der interne Code der Beschriftungen die Farbe nicht ändern kann. Sie können einen anderen Befehl verwenden, aber seien Sie sich bewusst, dass es \makenote*möglicherweise einen Grund für die Neudefinition gibt: Es ist durchaus möglich, dass die blaue Farbe ausläuft.

\documentclass[]{scrbook}
\usepackage{graphicx}
\usepackage{xcolor}

\usepackage{caption}%
\captionsetup{compatibility=false}%

\usepackage{scrlayer-scrpage}
\usepackage{scrlayer-notecolumn} %must be loaded ``Lastest''
\RedeclareNoteColumn[font = \color{blue}]{marginpar} %default

\let\mycolorcommand\color
\DeclareCaptionFont{bluecaptionfont}{\mycolorcommand{blue}}
\captionsetup{font={bluecaptionfont}, labelfont=bluecaptionfont}

\begin{document}

    here is the main text
    \makenote*{ 
        \includegraphics[width=3cm]{example-grid-100x100pt}
        \captionof{figure}{This should be blue}
    }

    \begin{minipage}{0.5\textwidth}
        \includegraphics[width=8cm]{example-grid-100x100pt}
        \tracingmacros=1 \captionof{figure}{Normal captionof's are blue}
    \end{minipage}

    \makenote*{
        Normal notes are blue
    }
\end{document}

Eine vielleicht sicherere Alternative ist, lokal neu zu definieren \normalcolor. Dann kann die Beschriftung die Farbe nicht zurücksetzen und die Farbe in der Notiz gewinnt:

\makenote*{ 
    \includegraphics[width=3cm]{example-grid-100x100pt}
    \let\normalcolor\relax
    \captionof{figure}{This should be blue}
}

Bildbeschreibung hier eingeben

verwandte Informationen