Ключи CGPDFDictionary
Я схожу с ума, потому что я не могу найти, какие клавиши "по умолчанию" вы бы имели в документе PDF.
Например, если я хочу получить гиперссылку из CGPDFDocument, я делаю это:
CGPDFStringRef uriStringRef;
if(!CGPDFDictionaryGetString(aDict, "URI", &uriStringRef)) {
break;
}
В этом случае ключ является "URI". Есть ли документ, объясняющий, каковы ключи CGPDFDictionary?
3 ответа
Абсурдно, что вам придется читать спецификации длиной 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
Ключи в словаре зависят от фактического объекта, который представляет собой словарь (словарь страницы имеет другие ключи, чем словарь аннотаций). Справочник Adobe PDF описывает все эти объекты и их ключи.