我想从 stix2 包中导入两个数学符号:\rdiagovfdiag
如下\fdiagovrdiag
所示:
我想这样做,因为添加整个包会改变我文章的风格,我不喜欢。我在不同的帖子中看到过(例如这里) 这是可能的,但我不知道如何在我的情况下修改这些示例。
答案1
这个想法是复制stix2.sty
,搜索定义两个符号的行,删除这些行之后的所有内容,然后向后保留仅定义符号所需的那些行。
将以下行保存在文件中mystix2.sty
。
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
\ProvidesPackage{mystix2}[2023/11/10 pick X symbols from stix2.sty]
\DeclareFontEncoding{LS1}{}{}
\DeclareFontSubstitution{LS1}{stix2}{m}{n}
\DeclareSymbolFont{arrows2} {LS1}{stix2sf} {m}{it}
\SetSymbolFont{arrows2} {bold}{LS1}{stix2sf} {b}{it}
\def\stix@undefine#1{%
\if\relax\noexpand#1\let#1=\@undefined\fi}
\def\stix@MathSymbol#1#2#3#4{%
\stix@undefine#1%
\DeclareMathSymbol{#1}{#2}{#3}{#4}}
\stix@MathSymbol{\rdiagovfdiag}{\mathord}{arrows2}{"C4}
\stix@MathSymbol{\fdiagovrdiag}{\mathord}{arrows2}{"C5}
\endinput
按照下面的示例文档使用它。
\documentclass{article}
\usepackage{mystix2}
\begin{document}
$\rdiagovfdiag$ $\fdiagovrdiag$
\end{document}
答案2
实际上,您不需要任何包裹。
这个想法是看看命令是如何定义的stix2.sty
,你会发现
\stix@MathSymbol{\rdiagovfdiag}{\mathord}{arrows2}{"C4}
\stix@MathSymbol{\fdiagovrdiag}{\mathord}{arrows2}{"C5}
好的,现在我们想看看arrow2
指向什么:
\DeclareSymbolFont{arrows2} {LS1}{stix2sf} {m}{it}
\SetSymbolFont{arrows2} {bold}{LS1}{stix2sf} {b}{it}
我们必须寻找LS1
,这是一种非标准编码:
\DeclareFontEncoding{LS1}{}{}
\DeclareFontSubstitution{LS1}{stix2}{m}{n}
好的,我们准备好了所有材料。我加了一个前缀,以确保没有任何东西被破坏。
\documentclass{article}
\usepackage{amsmath}
\DeclareFontEncoding{LS1}{}{}
\DeclareFontSubstitution{LS1}{stix2}{m}{n}
\DeclareSymbolFont{STIX2arrows2}{LS1}{stix2sf}{m}{it}
\SetSymbolFont{STIX2arrows2}{bold}{LS1}{stix2sf}{b}{it}
\DeclareMathSymbol{\rdiagovfdiag}{\mathord}{STIX2arrows2}{"C4}
\DeclareMathSymbol{\fdiagovrdiag}{\mathord}{STIX2arrows2}{"C5}
\begin{document}
$A\rdiagovfdiag\fdiagovrdiag B$
\end{document}
如果你不需要粗体版本,你甚至可以避免浪费数学组:
\documentclass{article}
\usepackage{amsmath}
\DeclareFontEncoding{LS1}{}{}
\DeclareFontSubstitution{LS1}{stix2}{m}{n}
\NewDocumentCommand{\rdiagovfdiag}{}{\text{\usefont{LS1}{stix2sf}{m}{it}\symbol{"C4}}}
\NewDocumentCommand{\fdiagovrdiag}{}{\text{\usefont{LS1}{stix2sf}{m}{it}\symbol{"C5}}}
\begin{document}
$A\rdiagovfdiag\fdiagovrdiag B$
\end{document}