我的应用程序使用PDFKit显示 PDF 文件,并允许用户通过我自己的代码使用UIKit
和CoreGraphics
框架对 pdf 文件进行注释。由于我想使用PencilKit框架来更好地进行注释,因此我正在实施该PencilKit
框架,但我发现了一些我遇到的问题。
我所做的是在 PDFView 上添加PKCanvasView
一个DocumentView
。从本质上讲,它工作正常,我可以使用工具进行注释,PencilKit
并且可以浏览 PDF 的页面。
当我在 PDF 页面上放大时出现问题。由于PKCanvasView
没有在 内部进行缩放DocumentView
,因此墨水注释显示为像素化。没有用新的PKCanvasView
比例重绘其内容,因为它的缩放没有改变,并且更新contentScaleFactor
以使绘图更清晰不起作用。
另一个问题是,在某种程度上与前一个问题相关,因为该应用程序适合每个 PDF 页面以使用所有屏幕,这使得UIScrollView
包含DocumentView
PDFView 的缩放在 PDF 页面大小的功能上有所不同. 这使得如果我打开一个具有小页面的 PDF 和另一个具有大页面的 PDF,就大小(宽度 x 高度)而言,即使我选择了最小的,我也会看到不同大小的墨迹工具线条的宽度两个文件的线宽PKToolPicker
。
所以我想知道是否可以将 aPKCanvasView
和 PDFView 分别添加到UIViewController’s
视图中,因此它们都具有相同的superview
,具有相同的 ContentSize 和最大/最小缩放级别,并且在平移和缩放 时PKCanvasView
,PDFView 也是如此。
无论如何,如果有解决方法,我会很高兴知道。;)