CGPDFDictionary键

时间:2011-05-19 15:45:39

标签: pdf ios4 quartz-graphics

我变得疯狂,因为我无法找到PDF文档中的“默认”键。

例如,如果我想从CGPDFDocument中检索超链接,我会这样做:

CGPDFStringRef uriStringRef;
if(!CGPDFDictionaryGetString(aDict, "URI", &uriStringRef)) {
    break;
}

在这种情况下,密钥是“URI”。是否有文件说明CGPDFDictionary的键是什么?

3 个答案:

答案 0 :(得分:12)

荒谬的是你必须阅读1300页长的规格,才能找到字典包含哪些键,一个字典可以包含任何内容,具体取决于它是什么样的注释。

要获取CGPDFDictionaryRef中的密钥列表:

// temporary C function to print out keys
void printPDFKeys(const char *key, CGPDFObjectRef ob, void *info) { 
    NSLog(@"key = %s", key);
}

在您尝试查看内容的地方:

CGPDFDictionaryRef mysteriousDictionary; // this is your dictionary with keys
CGPDFDictionaryApplyFunction(mysteriousDictionary, printPDFKeys, NULL);
// break on or right after above, and you will have the list of keys NSLogged

答案 1 :(得分:3)

Adobe PDF Reference描述了所有密钥。

答案 2 :(得分:1)

字典中的键取决于字典所代表的实际对象(页面字典具有除注释字典之外的其他键)。 Adobe PDF参考介绍了所有这些对象及其键。