来自NSData的CGPDFDocumentRef

Ole*_*anu 14 pdf sqlite iphone nsdata cgpdfdocument

我将我的PDF从SQLite DB转换为NSData变量.现在我有什么选择从这个NSData创建CGPDFDocumentRef?

或者我有什么选择来创建这个CGPDFDocumentRef,在SQLite中有数据吗?

vig*_*o24 37

您可以使用此功能创建PDF文档:

CGPDFDocumentRef CGPDFDocumentCreateWithProvider (
   CGDataProviderRef provider
);
Run Code Online (Sandbox Code Playgroud)

要创建提供程序,您可以使用此功能:

CGDataProviderRef CGDataProviderCreateWithCFData (
   CFDataRef data
);
Run Code Online (Sandbox Code Playgroud)

并考虑到NSData并且CFDataRef免费桥接,以便您可以互换使用它们.

总结试试这个:

NSData *data = ... my data from SQLite ...
CFDataRef myPDFData = (CFDataRef)data;
CGDataProviderRef provider = CGDataProviderCreateWithCFData(myPDFData);
CGPDFDocumentRef pdf = CGPDFDocumentCreateWithProvider(provider);
Run Code Online (Sandbox Code Playgroud)

不要忘记CFRelease所有未使用的数据.