我在Google、stackoverflow和Apple的开发者文库上搜索了PDF注释,但没有找到真正满足我的需求的方法。以下是我的问题和我目前的了解,请在需要时纠正我。
我想允许用户首先选择一些要突出显示的文本行,然后在其上绘制突出显示的矩形。
[问题]: 如何在CGContextDrawPDFPage()渲染的PDF页面上选择文本? 具体来说,如果我要覆盖touchesBegan/Moved/Ended委托方法,在那里应该做什么才能跟踪用户想要选择的文本框架呢?
我不想使用FastPDFKit,因为它会显示标志并收费,也不想使用UIWebView,因为我们可以使用的功能非常有限,而且我想学习如何自己做这个 :-)
谢谢! Derek
-- 更新--
可能的解决方案:我可以在我的PDF上面放一个透明视图,在解析PDF内容的同时,为每个Tj或每个TJ中的字符串元素构建一个矩形。那些矩形将是用户可以突出显示的可选“文本”。一个注意点是,一些PDF文件将几个单词挤入一个Tj中,这样会防止用户在这种情况下选择单个单词。我将尝试这种方法,并稍后更新结果。