Stellen Sie die Schriftart der Beschriftung in einer Unterabbildung auf die gleiche der Abbildung ein

Stellen Sie die Schriftart der Beschriftung in einer Unterabbildung auf die gleiche der Abbildung ein

Ich schreibe eine Arbeit mit der IEEEtranTIE-Vorlage (bereitgestellt vonIEEE-Transaktion zu Industrieelektronik).

Sie haben die IEEEtran-Vorlage leicht modifiziert und eine der Änderungen ist eine Änderung der Beschriftungsschriftart.

Um die Informationen zu den Schriftarten zu erhalten, habe ich das folgende Makro verwendet:

\makeatletter
\newcommand{\showfont}{
    Encoding: \f@encoding{},
    Family: \f@family{},
    Series: \f@series{},
    Shape: \f@shape{},
    Size: \f@size{}.
}
\makeatother

Wenn ich eine Unterabbildung mit dem Subcaption-Paket hinzufüge, wie von IEEEtran angegeben, erhalte \caption{\showfont}ichEncoding: T1, Family: phv, Series: m, Shape: n, Size: 8.

\makeatletter
\let\MYcaption\@makecaption
\makeatother
\usepackage[labelformat=simple,font=footnotesize]{subcaption}
\makeatletter
\let\@makecaption\MYcaption
\renewcommand{\thesubfigure}{(\roman{subfigure})}
\makeatother

und ich schreibe eine Bildunterschrift in eine Unterabbildung, erhalte ich eine andere Schriftfamilie. \subcaption{\showfont}ergibt Encoding: T1, Family: ptm, Series: m, Shape: n, Size: 8.. Um ein einheitliches Erscheinungsbild zu erhalten, möchte ich dieselbe Schriftfamilie ( phv) verwenden, aber etwas kleiner (7). Wie kann dies erreicht werden?

Eine Nebenfrage: Ist es möglich, eine Schriftart aus einer bestimmten Umgebung abzurufen und sie einer anderen Umgebung zuzuordnen?

So etwas wie (Pseudocode):

\edef\subcaptionfont\captionfont

oder (um ehrlich zu sein, verstehe ich immer noch nicht, wann ich verwenden soll \the):

\edef\subcaptionfont{\the\captionfont}

Möglicherweise auch mit der Möglichkeit, einige Felder zu ändern, wie Größe oder Schriftfamilie.

Ein MWE (die IEEEtranTIE-Klasse kann über den obigen Link heruntergeladen werden):

\documentclass[journal]{IEEEtranTIE}
\usepackage[pdftex,demo]{graphicx}
\usepackage{lipsum}

\makeatletter
\let\MYcaption\@makecaption
\makeatother

\usepackage[labelformat=simple,font=footnotesize]{subcaption}

\makeatletter
\let\@makecaption\MYcaption
\renewcommand{\thesubfigure}{(\roman{subfigure})}
\makeatother

\makeatletter
\newcommand{\showfont}{
    Encoding: \f@encoding{},
    Family: \f@family{},
    Series: \f@series{},
    Shape: \f@shape{},
    Size: \f@size{}.
}
\makeatother


\title{Title}

\author{Author}

\begin{document}
\maketitle

\begin{abstract}
\lipsum[1-2]
\end{abstract}

\section{title}
\lipsum[1-3]

\begin{figure}[h]
\begin{subfigure}{\columnwidth}
    \includegraphics[width=\textwidth]{dummy}
    \subcaption{\showfont}
    \label{fig1}
\end{subfigure}
\caption{\showfont}
\label{fig0}
\end{figure}

\end{document}

--BEARBEITEN-- Mit demHilfe von @TeXnicianIch konnte das gewünschte Ergebnis erzielen. Das Ergebnis wird erreicht, indem der Teil geändert wird, in dem die Untertitel geladen werden, nämlich

\usepackage[labelformat=simple,font=footnotesize]{subcaption}

mit

\usepackage[labelformat=simple]{subcaption}
\DeclareCaptionFont{myfont}{\fontfamily{phv}\scriptsize\sele‌​ctfont}
\captionsetup[sub]{font=myfont}

Der letzte Teil der Frage ist weiterhin gültig und kann wie folgt umformuliert werden.

Ist es möglich, die Schriftart der Untertitel so einzustellen, dass sie die gleiche wie die der Untertitel übernimmt, indem Sie etwas Ähnliches verwenden (aber kein funktionierendes Beispiel, da \thecaptionfontes sich nicht um einen gültigen Befehl handelt):

\usepackage[labelformat=simple]{subcaption}
\DeclareCaptionFont{myfont}{\thecaptionfont\scriptsize\selec‌​tfont}
\captionsetup[sub]{font=myfont}

?

Antwort1

Meiner Meinung nach sollten Sie mit dieser Klasse „ captionoder“ nicht verwenden.subcaption

Da die Schriftart in den Bildunterschriften verwendet wird \footnotesize\sffamily, können Sie

\documentclass[journal]{IEEEtranTIE}
\usepackage[demo]{graphicx}
\usepackage{lipsum}

\makeatletter
\let\MYcaption\@makecaption
\makeatother

\usepackage[labelformat=simple,font={footnotesize,sf}]{subcaption}

\makeatletter
\let\@makecaption\MYcaption
\renewcommand{\thesubfigure}{(\roman{subfigure})}
\makeatother

\makeatletter
\newcommand{\showfont}{
    Encoding: \f@encoding{},
    Family: \f@family{},
    Series: \f@series{},
    Shape: \f@shape{},
    Size: \f@size{}.
}
\makeatother


\title{Title}

\author{Author}

\begin{document}
\maketitle

\begin{abstract}
\lipsum[1-2]
\end{abstract}

\section{title}
\lipsum[1-3]

\begin{figure}[h]
\begin{subfigure}{\columnwidth}
    \includegraphics[width=\textwidth]{dummy}
    \subcaption{\showfont}
    \label{fig1}
\end{subfigure}
\caption{\showfont}
\label{fig0}
\end{figure}

\end{document}

Bildbeschreibung hier eingeben

Hier ist das Setup mit subfig, das mit der Klasse kompatibel ist.

\documentclass[journal]{IEEEtranTIE}
\usepackage[demo]{graphicx}
\usepackage{lipsum}

\usepackage[caption=false]{subfig}

\captionsetup[subfloat]{font={footnotesize,sf}}

\makeatletter
\newcommand{\showfont}{
    Encoding: \f@encoding{},
    Family: \f@family{},
    Series: \f@series{},
    Shape: \f@shape{},
    Size: \f@size{}.
}
\makeatother


\title{Title}

\author{Author}

\begin{document}
\maketitle

\begin{abstract}
\lipsum[1-2]
\end{abstract}

\section{title}
\lipsum[1-3]

\begin{figure}[htp]
\subfloat[\showfont\label{fig1}]{%
  \includegraphics[width=\columnwidth]{dummy}%
}
\caption{\showfont}
\label{fig0}
\end{figure}

\end{document}

Die Ausgabe ist die gleiche.

Antwort2

Hier ist eine funktionierende Version, die die Schriftart ptmfür beide Bildunterschriften festlegt. Sie können sie gerne in eine andere Schriftart ändern (wenn Sie das möchten, müssen Sie auch die Schriftart der Bildunterschriften ändern):

Bild

\documentclass[journal]{IEEEtran}
\usepackage[demo]{graphicx}
\usepackage{lipsum}

\makeatletter
\let\MYcaption\@makecaption
\makeatother

\usepackage[compatibility=false]{caption}
\DeclareCaptionFont{quackfont}{\fontfamily{ptm}\fontsize{7pt}{9pt}\selectfont}
\usepackage[labelformat=simple,font=quackfont]{subcaption}

\makeatletter
\let\@makecaption\MYcaption
\renewcommand{\thesubfigure}{(\roman{subfigure})}
\makeatother

\makeatletter
\newcommand{\showfont}{
    Encoding: \f@encoding{},
    Family: \f@family{},
    Series: \f@series{},
    Shape: \f@shape{},
    Size: \f@size{}.
}
\makeatother


\title{Title}

\author{Author}

\begin{document}
\maketitle

\begin{abstract}
\lipsum[1-2]
\end{abstract}

\section{title}
\lipsum[1-3]

\begin{figure}[h]
\begin{subfigure}{\columnwidth}
    \includegraphics[width=\textwidth]{dummy}
    \subcaption{\showfont}
    \label{fig1}
\end{subfigure}
\caption{\showfont}
\label{fig0}
\end{figure}

\end{document}

verwandte Informationen