DVI 文件中的字符编码为 0x03,而实际十六进制值为 0xA4

DVI 文件中的字符编码为 0x03,而实际十六进制值为 0xA4

乳胶文件:

\documentclass[12pt]{article}
\begin{document} 
\thispagestyle{empty}
$\mathbf{p}^*$
\end{document} 

此文件的 DVI 上的 dviasm 输出:

[preamble]
id: 2
numerator: 25400000
denominator: 473628672
magnification: 1000
comment: ' TeX output 2018.04.12:1533'

[postamble]
maxv: 632.500000pt
maxh: 429pt
maxs: 4
pages: 1

[font definitions]
fntdef: cmsy8 at 8pt
fntdef: cmbx12 at 12pt

[page 1 0 0 0 0 0 0 0 0 0]
down: 632.500000pt
push:
  down: -603.500000pt
  down: 573.500000pt
  push:
    down: -536.500000pt
    push:
      right: 56.624817pt
      fnt: cmbx12 at 12pt
      set: 'p'
      push:
        down: -4.354706pt
        fnt: cmsy8 at 8pt
        set: '\x03'
      pop:
    pop:
  pop:
pop:

为什么星号的编码是0x03,而它在cmsy8字体表中的实际编号是164(0xA4)?

这不是 dviasm 中的错误。我检查了实际的 .dvi 文件。设置字符3optcode 在那里。我遗漏了什么?

答案1

cmsy8这是字体的表格

在此处输入图片描述

你可以通过运行交互式会话来自己生成它

pdflatex nfssfont

cmsy8<return>在第一个提示时和\table\bye<return>下一个提示时回答。

如您所见,星号位于插槽处0x03,并且插槽之外没有字形0x7F

星号的数学代码确实是"2203(槽位中数学家族 2 中的二进制运算"03)。

相关内容