2

我正在使用 Mac OS 10.12,并且有一个使用 PDFKit 界面显示 pdf 文件的应用程序。但是我遇到了以下问题

将pdf文档设置为PDFView,在OS10.11等原版操作系统中,会调用PDFView->drawPage()函数,而在OS10.12中,不调用该函数;

PDFView can't draw pdf annotation in OS10.12;

上述解决方案将不胜感激

4

1 回答 1

2

我认为这要么是一个直接的错误,要么是一个尚未记录的 API 更改。我将此记录为错误 (27666426),现在可以看到它被标记为打开的副本 (27668895)。

请注意,10.12 Beta 6-drawWithBox:toContext:被调用来代替现在已弃用的-drawWithBox:. 请注意,所有绘图都需要使用传入的上下文。

更新:

然而,现在发布的 10.12 似乎并不那么简单。我发现-drawWithBox:在 10.11 和-drawWithBox:toContext:10.12+ 上驱动的 PDF 视图打印已损坏。

通过汇编程序,我可以看到 10.12 在打印时现在调用-drawWithBox:inContext:not -drawWithBox:toContext:or -drawWithBox:(就像 10.11 上的情况一样)。选择器似乎inContext:已经存在了一段时间

似乎在 10.9-10.12 上适用于屏幕和打印渲染的唯一解决方案是使用未记录的 -drawWithBox:inContext:.

于 2016-08-03T09:01:34.250 回答