我正在使用 Mac OS 10.12,并且有一个使用 PDFKit 界面显示 pdf 文件的应用程序。 但我遇到了以下问题
Set pdf document to PDFView, in original OS,e.g. OS10.11 , there will invoke PDFView->drawPage() function, but in OS10.12,the function is not invoked;
PDFView can't draw pdf annotation in OS10.12;
解决上述问题将不胜感激
最佳答案
我认为这要么是一个直接的错误,要么是一个尚未记录的 API 更改。我将此记录为错误 (27666426),现在可以看到它被标记为打开的重复项 (27668895)。
请注意,在 10.12 Beta 6 中,将调用 -drawWithBox:toContext:
来代替现已弃用的 -drawWithBox:
。请注意,所有绘图还需要使用传入的上下文。
更新:
然而,随着 10.12 版本的发布,事情似乎并没有那么简单。我发现我的 PDF View 打印(在 10.11 上由 -drawWithBox:
驱动,在 10.12+ 上由 -drawWithBox:toContext:
驱动)已损坏。
单步调试汇编程序,我可以看到 10.12 在打印时现在调用 -drawWithBox:inContext:
而不是 -drawWithBox:toContext:
或 -drawWithBox:
(如 10.11 的情况)。 inContext:
选择器似乎是 around a while .
似乎唯一适用于 10.9 - 10.12 屏幕和打印渲染的解决方案是使用未记录的 -drawWithBox:inContext:
。
关于cocoa - 使用 PDFKit 界面显示 pdf 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38517984/