仅更改 Latex 模板中的一个字符

仅更改 Latex 模板中的一个字符

我有一个 Elsevier 的书籍模板,在数学环境中,字符“v”看起来与希腊字母 \nu 非常相似。这给读者带来了很多误解和挫败感。我尝试了 txfonts 包,它解决了这个问题。以下是输出 在此处输入图片描述

由于这本书已经完成,我无法将所有“v”字符替换为 \varv

我的问题是:我有什么办法可以在我已有的 Latex 模板中使用 \varv 更改“v”字母吗?这将会救我一命。

答案1

只需改变\mathcodev

\documentclass{book}

\usepackage{amsmath}
\usepackage{txfonts}

\AtBeginDocument{\mathcode`v=\varv}

\begin{document}

A `v' in math: $v$

A `nu' in math: $\nu$

\end{document}

\AtBeginDocument注释掉该行的输出

在此处输入图片描述

\AtBeginDocument取消注释该行的输出

在此处输入图片描述

评论

我建议使用

\usepackage{newtxtext}
\usepackage[varvw]{newtxmath}

而不是\usepackage{txfonts}。字体本质上是一样的,但是 的缺陷txfonts被纠正了。

\documentclass{book}

\usepackage{amsmath}
\usepackage{newtxtext}
\usepackage[varvw]{newtxmath}

\begin{document}

A `v' in math: $v$

A `nu' in math: $\nu$

\end{document}

在此处输入图片描述

答案2

假设您正在使用:

\usepackage{newtxtext,newtxmath}

序言中的以下内容将数学模式中的“v”替换为\varv输出中的符号。

\DeclareMathSymbol{v}{\mathord}{lettersA}{51}

\documentclass{article}
\usepackage{newtxtext,newtxmath}
\usepackage[T1]{fontenc}
\DeclareMathSymbol{v}{\mathord}{lettersA}{51}
\begin{document}

This is \verb+\varv+ $\varv$

This is v $v$.

This is greek \verb+\nu+ $\nu$.

\end{document}

在此处输入图片描述

相关内容