我已经使用 LaTeX 做数学作业和笔记大约 6 个月了。但是,对于任何使用 TeX 真正功能的东西,我都还很陌生。
以前我手写作业的时候,总是一丝不苟地在“z”和“7”上划线,像这样:
我的 z 也是如此。
有没有办法让 LaTeX 在数学模式中自动交叉我的 7 和 z(以及大写 Z)?我想让正文中的 7 和 z 保持正常。另外,我不想使用新命令;我希望每当我输入 7 时都会像平常一样出现一个交叉的 7,对于 Z/z 也是如此。
我的第一个解决方案是使用“负空间”命令,如下所示:
$7\~-$
然而,我不确定这是最优雅的解决方案,我仍然不知道如何让 LaTeX 在输入类似以下内容时自动执行此操作
$3+4 = 7.$
感谢任何人提供的帮助!
答案1
此外,我强烈建议选择带有此类数字的数学字体,或者设计一种。对于学习 TeX 以及在数学作业中使用,我认为没有什么大问题,但是请考虑不要在重要文档中做这种可能产生副作用的事情。
要回答你的问题,你可以在数学模式下使 7 和 Z 成为活动字符,这与(pdf)LaTeX 能否识别文本字符串并替换(扩展)它们。
\documentclass[a4paper]{article}
\begingroup\lccode`~=`7\lowercase{\endgroup
\edef~{\rlap{\noexpand\textbf{--}}\mathchar\the\mathcode`7}}
\mathcode`7="8000
\begin{document}
The 7 crossed in only math mode: $3 + 4 = 7$
\end{document}
答案2
最简单的答案是:不要这样做。
更长的答案:交叉或不交叉的 7 和 z 是字体的特征。字体设计师花费了大量时间使自己的字体在审美上一致、可读且令人愉悦。当您进行此更改时,您基本上推翻了他的决定;在大多数情况下,它看起来很糟糕。
答案3
答案4
Ƶ/ƶ 在 Unicode 中是一个单独的字母。还有一个组合笔画叠加,7̵ 或 7̶,在某些字体中可能会按您想要的方式显示。
如果你能找到带有笔划 7 和 z 的字体,则可以在数学模式下使用unicode-math
或加载它mathastext
。例如,
\defaultfontfeatures{Scale=MatchLowercase}
\setmaathfont{New Computer Modern Book Math}
\setmathfont{SomeStrokedFont-Regular.otf}[range=up]
\setmathfont{SomeStrokedFont-Italic.otf}[range=it]