CGPDFDocumentRef от NSData
Я получаю свой PDF из БД SQLite в переменную NSData. Теперь, каковы мои варианты для создания CGPDFDocumentRef из этого NSData?
Или каковы мои варианты создания этого CGPDFDocumentRef, данные в SQLite?
1 ответ
Решение
Вы можете создать PDF документ, используя эту функцию:
CGPDFDocumentRef CGPDFDocumentCreateWithProvider (
CGDataProviderRef provider
);
Для создания провайдера вы можете использовать эту функцию:
CGDataProviderRef CGDataProviderCreateWithCFData (
CFDataRef data
);
и считаю, что NSData
а также CFDataRef
являются бесплатными мостами, так что вы можете использовать их взаимозаменяемо.
Подводя итог, попробуйте это:
NSData *data = ... my data from SQLite ...
CFDataRef myPDFData = (CFDataRef)data;
CGDataProviderRef provider = CGDataProviderCreateWithCFData(myPDFData);
CGPDFDocumentRef pdf = CGPDFDocumentCreateWithProvider(provider);
Не забудь CFRelease
все неиспользованные данные.