1

PSPDFDocument在删除 PDF 文件前后清除缓存时遇到问题。

这就是我所做的:

// ...
PSPDFDocument *document = [PSPDFDocument PDFDocumentWithUrl:(pdfURL)];
[document clearCacheForced:YES];

[mManagedObjectContext deleteObject:mPdfDocument];
// ...

当我尝试清除所有 PDF 的整个缓存时,它可以工作:

// ...
[[PSPDFCache sharedPSPDFCache] clearCache];
// ...

有任何想法吗?

4

2 回答 2

2

好吧,方法名称有点误导,PSPDFDocument 上的 clearCacheForced 只是释放一些内部缓存,如文档页数、坐标、注释位置 - 而不是 PSPDFCache 缓存到磁盘的图像内容。你需要打电话

- (void)removeCacheForDocument:(PSPDFDocument *)aDocument deleteDocument:(BOOL)deleteMagazine

在 PSPDFCache 中删除缓存的图像。

另请参阅 API 文档: http ://pspdfkit.com/documentation/Classes/PSPDFCache.html#//api/name/removeCacheForDocument:deleteDocument :

于 2011-12-27T12:16:36.193 回答
0

对于 PSPDFKit 4.1.0 + [PSPDFCache sharedPSPDFCache] 已弃用,请使用:

[[PSPDFKit sharedInstance].cache removeCacheForDocument:self.document deleteDocument:YES error:&error];
于 2016-03-07T16:54:03.213 回答