将某个字母渲染成其他内容

将某个字母渲染成其他内容

我想制作一本书,其中一个字母的呈现方式与通常的样子不同。

我试过

\newcommand{\oldvs}{z}
\catcode`\z=\active
\defz{\stackengine{0pt}{\oldvs}{\~}{O}{c}{F}{T}{L}}
\newcommand{\oldVS}{Z}
\catcode`\Z=\active
\defZ{\stackengine{0pt}{\oldVS}{\~}{O}{c}{F}{T}{L}}

但是,这也禁止它在命令中使用,尽管我已将其放在前面\begin{document},但它会影响某些 .sty 文件的加载。我不知道为什么它们会在那部分之后加载;我使用现有模板 (fancyBook),并不认为切换到其他模板会有帮助。

有没有办法可以实现这个目标,而不必每次都手动放入其他东西?

UPD(与要点无关):上面的代码没有产生我想要的结果;更好的方法是分别是\stackengine{0pt}{z}{$\sim$}{O}{c}{F}{T}{L}}\stackengine{0pt}{Z}{$\sim$}{O}{c}{F}{T}{L}

UPD2:更好的方法是分别使用\stackengine{0pt}{z}{\textasciitilde}{O}{c}{F}{T}{L}\stackengine{0pt}{Z}{\raisebox{0.3ex}{\textasciitilde}}{O}{c}{F}{T}{L}。另外,我目前有一个版本,它的实现方式需要我在源代码中添加一些额外的字符;我的问题是,有没有办法在不这样做的情况下做到这一点

相关内容