100 如何将另一个Type1字体作为另一类数学字体插入正常的数学公式中呢?

发布于 2025-08-01 21:13:09

如题,我们已经找到下面形式的「p和q」属于「janaskrivana字体」,来自aurical这个字体宏包

image.png

我们的最终目标是:

image.png

要求常规的数学字体使用latin-modern-math或者computer-modern-math,而希望在不影响文章其他字体设置的基础上,方便、独立、优雅地输入「这种形式的p和q(或许有其他字母,差不多可以理解成想定义一个新的\mathcal(不如就叫\mathjana吧)命令)」

在上图中,「\delta」和「t」都用默认的数学字体即可;只希望pq有方便的命令接口用于调用janaskrivana这个字体

如果「janaskrivana」以.otf或者.ttf的形式存在,这可以很轻松地通过unicode-mathrange参数实现(可见下图),但这里的「janaskrivana」是一个Type1字体

image.png

下面是本问题的MWE,希望回答可以介绍在哪个文件找到对应的用于\DeclareSymbolFontAlphabet等语句的信息,重在寻找的思路而非结果

\documentclass{article}
\usepackage{amsmath}
\usepackage{lipsum}
\begin{document}
\[ p^2+q^2=r^2 \]
\lipsum[2]

\[ 
\delta 1_{\{\lVert\delta\rVert\le1\}}\times(p-q)_t
+ (\delta 1_{\{\lVert\delta\rVert>1\}}\times p_t)
\]

\lipsum[2]

\end{document}

image.png


Edit:

这个链接中下载到CTAN上aurical包的原文件。

其目录结构大致为:

image.png

其中在\aurical\texmf\tex\latex\aurical\T1JanaSkrivana.fd中:

\DeclareFontShape{T1}{JanaSkrivana}{m}{n}{<-> [1.15] JanaSkrivana}{}

但这与我们想要用的\DeclareSymbolFont\DeclareSymbolFontAlphabet并不太匹配,照猫画虎后报错...

\documentclass{article}
\usepackage{amsmath}
\usepackage{lipsum}
\DeclareSymbolFont{janaskrivana}{T1}{JanaSkrivana}{m}{n}
\DeclareSymbolFontAlphabet{\mathjana}{janaskrivana}
\begin{document}
\[ p^2+q^2=r^2 \]
\lipsum[2]

\[ 
\delta 1_{\{\lVert\delta\rVert\le1\}}\times(\mathjana{p}-\mathjana{q})_t
+ (\delta 1_{\{\lVert\delta\rVert>1\}}\times \mathjana{p}_t)
\]

\lipsum[2]

\end{document}

pdflatex下将得到:

! Undefined control sequence.
<argument> <->[1.15]JanaSkrivanaauri@slant

l.7 ...}{sl}{<-> [1.15] JanaSkrivana\auri@slant}{}

?

这总不是要我接着“偷”\DeclareFontShape{T1}{JanaSkrivana}{m}{sl}{<-> [1.15] JanaSkrivana\auri@slant}{}吧....

遗憾离场....

查看更多

关注者
0
被浏览
79
Eureka
Eureka 18小时前
这家伙很懒,什么也没写!
\documentclass{article}
\usepackage{aurical}
\usepackage{amsmath}
\usepackage{lipsum}
\DeclareSymbolFont{jana}{T1}{JanaSkrivana}{m}{n}
\DeclareSymbolFontAlphabet{\mathjana}{jana}

\begin{document}
\lipsum[1][1-4]

\[ 
\delta 1_{\{\lVert\delta\rVert\le1\}}\times(p-q)_t
+ (\delta 1_{\{\lVert\delta\rVert>1\}}\times p_t)
\]

\lipsum[1][5-8]

\[
\delta 1_{\{\lVert\delta\rVert\le1\}}\times(\mathjana{p}-\mathjana{q})_t
+ (\delta 1_{\{\lVert\delta\rVert>1\}}\times p_t)
\]
\end{document}

编译结果:
image.png

1 个回答

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览