更改所有表格中的字体类型

更改所有表格中的字体类型

我想让表格的字体类型与文本中使用的字体类型相同,我该怎么做?我在文本中使用 Roboto Slab Light,但在表格和标题中字体是 Roboto Slab。

以下是一个例子

\documentclass{article}

\usepackage[rm,light]{roboto}
\usepackage[T1]{fontenc}

\title{example}
\date{September 2018}

\usepackage{natbib}
\usepackage{graphicx}

\begin{document}

\maketitle

\section{Introduction}
Text text text.

\begin{table}[h]
    \centering
    \begin{tabular}{c|c}
       text  & text \\
       text  & text
    \end{tabular}
    \caption{Caption}
    \label{tab:my_label}
\end{table}

\end{document}

在此处输入图片描述

答案1

作为一种解决方法,您可以\mdseries在表中添加:

\documentclass{article}

\usepackage[rm,light]{roboto}
\usepackage[T1]{fontenc}


\begin{document}


\section{Introduction}
Text text text.

\begin{table}[h]
    \centering\mdseries
    \begin{tabular}{c|c}
       text  & text \\
       text  & text
    \end{tabular}
    \caption{Caption}
    \label{tab:my_label}
\end{table}

\end{document}

*编辑

要自动将其应用于所有表,您可以使用@egreg 的出色解决方案https://tex.stackexchange.com/a/286772/36296

\documentclass{article}

\usepackage[rm,light]{roboto}
\usepackage[T1]{fontenc}

\usepackage{etoolbox}
\makeatletter
\appto\@floatboxreset{%
  \ifx\@captype\andy@table
    \mdseries
  \fi
}
\def\andy@table{table}
\makeatother

\begin{document}


\section{Introduction}
Text text text.

\begin{table}[h]
    \centering
    \begin{tabular}{c|c}
       text  & text \\
       text  & text
    \end{tabular}
    \caption{Caption}
    \label{tab:my_label}
\end{table}

\end{document}

在此处输入图片描述

相关内容