我如何将包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
奇怪的事情……