c - 如何解析 CFF 的 Top DICT INDEX 数据条目?

标签 c parsing pdf compact-font-format

我正在解析 CFF 数据。我已经到了“Top DICT INDEX”条目的地步。我已经成功解析了版本数据和“Name INDEX”,但是我正在努力解析下一个条目“Top DICT INDEX”。

根据 Adob​​e 技术说明 #5176 第 8 节:

This contains the top-level DICTs of all the fonts in the FontSet stored in an INDEX structure.

所以我认为将此字典索引解析为 Name INDEX 是合乎逻辑的,除了将数组条目视为 char 数组,我会将它们解析为 DICT 数据类型。这是我遇到问题的地方。 INDEX 数据类型以大端格式声明双字节 (Card16) 数组计数。根据 INDEX 的元数据,我有 257 个条目(两个字节,其中有 1 (data[offset] << 8) + data[++offset])。但规范指出:

Objects contained within this INDEX correspond to those in the Name INDEX in both order and number.

My Name INDEX 包含 1 个条目(实际字体的名称)。所以我有点困惑是我在数据解析的某个地方有偏移问题还是实际字体无效?

最佳答案

看起来 - 这是一个差一个错误。

关于c - 如何解析 CFF 的 Top DICT INDEX 数据条目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7186139/

相关文章:

计算 C 函数的源代码长度

java - Java中的Gson Json解析

可以确定特定节点的字体大小的 HTML 解析器

PDF 到 XML 转换的 java 代码

javascript - 下载带有 http header 的文件

在 Linux 中复制/移动文件并使用系统调用的 C 应用程序

c - 使用 C 在客户端服务器上 read() write() 整数值

c - 如何转换C中的十六进制值?

c# - 如何将字符串分成字符

swift - 在 Swift 中调整从 API 下载的 pdf 文档