在渲染代码中访问 latinmodern math 中 cmex10 等效符号

在渲染代码中访问 latinmodern math 中 cmex10 等效符号

我希望不使用现有的 TeX 发行版之一,也不通过 Web 浏览器来显示和打印数学公式,而是使用我自己的代码,以便显示作为其用户界面的一部分集成到我的软件包中。目前我使用的是 BaKoMa 版本 cmr、cmmi、cmsy 和 cmex,但我可能想改用 Latin Modern (Math),因为它具有更广泛的 Unicode 覆盖范围。

我可以在那里找到(几乎)所有来自原始 TeX 字体的符号,因此只需调整查找表,我就可以调整现有代码以显示大多数内容。但是(使用 fontforge 检查 latinmodern math)cmex10 中的许多符号都存在,但代码不在 Unicode 范围内。作为一个具体的例子,从 U+110790 开始,有一系列大小不一的部首符号,在此之前,有各种逐渐变大的圆括号、方括号和花括号。等等等等。

我的问题是,因为我只能看到代码超出 U+10ffff 的符号,所以我不知道如何让我的 C++ 代码显示它们。wxWidgets 拒绝 Unicode 范围以上的代码点,而 Windows 上的本机调用基于 UTF16,它也仅涵盖 Unicode 范围。我不确定为什么这些被赋予“扩展”代码点,而不仅仅是广泛的私人使用区域的代码点!但我需要一个指针 - 请 - 告诉我如何编写 C++ 代码以将它们呈现在我的屏幕或页面上。如果我知道要读取哪个网页,这可能很明显,但到目前为止,我的搜索都没有成功。

这与 TeX 有关,因为我的第一个测试程序是我自己开发的 dvi 查看器(它对旧式字体的处理很好 - 但我还是想知道我是否永远被锁定在它们上面,或者我是否可以更新以使用 Unicode 字体和代码映射)。我打算最终使用我自己的类似 TeX 的布局代码,但使用与 TeX 兼容的字体似乎是一个非常好的主意,不仅质量好,而且我还有一个简单的度量信息文件来源。

所以,请有人能给我指出一些信息,让我能从自己的 C++ 代码中呈现拉丁现代数学中的 cmex10 类字符,或者将我重定向到另一个更适合提出这个问题的地方。

相关内容