![在 ConTeXt 中排版年金和人寿保险符号](https://linux22.com/image/277563/%E5%9C%A8%20ConTeXt%20%E4%B8%AD%E6%8E%92%E7%89%88%E5%B9%B4%E9%87%91%E5%92%8C%E4%BA%BA%E5%AF%BF%E4%BF%9D%E9%99%A9%E7%AC%A6%E5%8F%B7.png)
如何在 ConTeXt 中排版年金和人寿保险符号、精算符号。我看到有可用的软件包,但不适用于 ConTeXt。
谢谢
答案1
这是纯 TeX,但我猜它也可以用于 ConTeXt。专家可以改进它。
\def\actuarial#1{%
\vbox{
\offinterlineskip
\tabskip=0pt
\mathsurround=0pt
\halign{##&\vrule##\cr
\noalign{\hrule}%
&height 1pt\cr
$\scriptstyle#1$&\cr
}%
}%
}
$a_{\actuarial{n}}$
\bye
答案2
根据 Barbara Beeton 的评论,您只需选择一种包含精算弯曲符号的字体即可。例如,使用 XITS 字体,您将获得:
% Use a math font that has the actuarial bend symbol
\usemodule[simplefonts]
\setmathfont[XITS]
\Umathchardef\actuarial "0 "0 "20E7
\starttext
$a_{n \actuarial}$
\stoptext
如果有人能说出这个字形的正确数学类和文本名称,我可以发送请求将其添加到 char-def.lua,以便它在 ConTeXt 中开箱即用。
答案3
这是一些可以帮助您的东西,您可能需要调整尺寸raisebox
,负空间,也许还有的大小\urcorner
。
\documentclass{article}
\usepackage{amsmath,amssymb}
\newcommand{\bend}[1]{\smash{#1\!\!\!{\raisebox{-0.2em}{\big\urcorner}}}}
\begin{document}
This is horrible:
$a_{\overline{n|}i}$
This isn't great, but is much better:
$a_{\bend{n} i}$
\end{document}
毫无疑问,有人可以提出一种更清晰的调整方法,我可以更新评论。
此外,它还需要在 ConTeXt 中进行测试 - 虽然我读过它的内容,但我没有使用它应该工作。