pdfx:某些字体的 CIDset 不完整

pdfx:某些字体的 CIDset 不完整

pdfx我尝试使用下的编译文档为 pdf/x 和 pdf/a LuaLaTeX,而且已经相当成功。但仍然有一件事带来问题:对于某些字体,如果我使用 Acrobat 检查生成的 pdf/a 文件,我会得到以下错误:“子集字体中的 CIDset 不完整(字体包含未列出的字形)”(VeraPDF 给出了相同的错误,因此问题似乎是真实的)。

以下是 MWE:

\RequirePackage{filecontents}
\begin{filecontents*}{\jobname.xmpdata}
\Title{Test}
      \Author{Simon Spiegel}
      \Language{de-DE}
\end{filecontents*}
\documentclass
{article}
\usepackage{fontspec}
\setmainfont{Palatino Linotype}
[Ligatures={TeX,Common},
Extension = .ttf,
]
\usepackage[a-3b]{pdfx}
\begin{document}
Test
\end{document}

我意识到由于专有字体,并非所有人都能编译此 MWE,但由于问题仅发生在特定字体上,因此我不得不使用这个示例。

手册pdfx中提到了这个错误,但仅与有关XeLaTeX。根据手册,它不应该发生在LuaLaTeX

据我所知,这似乎至少在某种程度上是这个特定字体的问题,但由于我依赖它,所以我正在寻找一种方法来解决它。

编辑

这是一个新的 MWE,它带有一些希望更常见的字体(当然路径必须进行调整)。

\RequirePackage{filecontents}
\begin{filecontents*}{\jobname.xmpdata}
\Title{Test}
      \Author{Simon Spiegel}
      \Language{de-DE}
\end{filecontents*}
\documentclass
{article}
\usepackage{fontspec}
\setmainfont{Georgia}
[Ligatures={TeX,Common},
Extension = .ttf,
]

\newfontfamily\fontone{Verdana}
[Ligatures={TeX,Common},
Extension = .ttf,
]
\newfontfamily\fonttwo{Cambria}
[Ligatures={TeX,Common},
Extension = .ttf,
Path = {/Users/simi/FontExplorerX/C/Cambria/}
]
\usepackage[a-3b]{pdfx}
\begin{document}
Test

\fontone
Test

\fonttwo
Test
\end{document}

所有这些字体都给我同样的错误。我想知道这是否只发生在 .ttf OpenType 字体上。

答案1

您需要将变量设置omitcidset为 1(感谢 Hans Hagen...):

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Georgia}
\usepackage[a-3b]{pdfx}
\pdfvariable omitcidset=1
\begin{document}
Test
\end{document}

(也许 pdfx 应该这样做,因此最好通知维护者)

在此处输入图片描述

相关内容