我尝试创建一个类。我写了
\renewcommand\thetable{\thechapter\arabic{table}.}
在表格下或句子中我有例如“表 2.1”。但问题是当引用位于句子末尾时,例如:
Example sentences with reference \ref{tab.some}.
给出
例句请参考表2.1。
对于图形,存在类似的问题。
答案1
我认为,静态地将引用机制更改为以点结尾是一种不好的做法。它会强制您的结构。代码中也不清楚应该如何解释它,例如:
Bla bla ... as is seen in \ref{tab.some} Hence we can conclude
在我看来,你好像忘了.
,但事实并非如此。
为什么在引用后面要加一个点?
另外,你的引用不是缩写,因此不需要加点。
我的建议是使用这个:
\renewcommand\thetable{\thechapter\arabic{table}}
否则,您需要提前查看并解析.
。这可以通过以下方式完成:
\makeatletter
\renewcommand\thetable{\thechapter\arabic{table}\@ifnextchar.\relax.}
\makeatother
但上述内容也可能存在不足。
答案2
您想要dot
在标题中而不是在参考文献中。这可以通过caption
包来完成。重新定义labelsep
类似
\captionsetup[table]{labelsep=period}
\captionsetup[figure]{labelsep=period}
单独或简单地放
\captionsetup{labelsep=period}
并且它适用于图形和表格。
一个小例子:
\documentclass{book}
\usepackage{graphicx}
\usepackage{caption}
\captionsetup[table]{labelsep=period}
\captionsetup[figure]{labelsep=period}
\begin{document}
\chapter{Some chapter}
\begin{table}[htb]
\centering
\caption{Some caption}\label{tab:mytable}
Some table comes here
\end{table}
I refer to Table~\ref{tab:mytable} and my Figure~\ref{fig:myfig} here in text.
\begin{figure}[htb]
\centering
\includegraphics[width=4cm]{example-image-a}
\caption{Some figure}\label{fig:myfig}
\end{figure}
\end{document}