PDF/A 中的 mathabx

PDF/A 中的 mathabx

我如何将包mathabx应用于 PDF/A? pdflatex从中生成 PDF

\documentclass{article}
\usepackage{mathabx}
\usepackage{pdfx}
\begin{document}
\thispagestyle{empty}
$\smile$
\end{document}

被 Acrobat 的 Preflight 拒绝了,理由是

Font is not valid
  Page 1: TeX-mathb 10 9.963 pt Type 1 embedded (as a subset)
    List of glyph width mismatches (PDF data versus embedded font data)
      999.8 versus 0 (0/0)

其中唯一的字体来自mathb10.pfb

mftrace --keep-trying --formats=pfb mathb10 当我提供由 metafont 源生成的文件时,Acrobat 的 Preflight 批准了该 PDF。

答案1

首先,Acrobat DC 批准 PDF 符合 PDF-A/1b 标准,而 Acrobat XI 则拒绝。

看起来,Acrobat XI 中的预检工具被%加密部分中的两个尾随注释误导了mathb10.pfb

$ t1disasm $(kpsewhich mathb10.pfb) | grep -C 1 '%$'
 noaccess def
%
/Subrs 1 array
--
 noaccess def
2 index%
/CharStrings 258 dict dup begin
$

删除这些注释后,Acrobat XI 也会批准 PDF。以下指令在本地修补字体。稍后的pdflatex调用将考虑它。

t1disasm $(kpsewhich mathb10.pfb) | sed -e 's!%$!!' | t1asm -b | sponge mathb10.pfb

奇怪的事情……

相关内容