2011-03-18 44 views
16

我試圖在ipad上渲染後突出顯示pdf上的文本。我覺得我實現了很多使用google搜索和示例代碼的提供的fastPdfKit 。從這個鏈接我很容易解析PDF,並試圖突出顯示來自用戶搜索的文本。我使用下面的方法來獲取文本範圍:使用ipad的drawLayer渲染後的PDF文本選擇

-(NSArray *)searchResultOnPage:(NSUInteger)pageNr forSearchTerms:(NSString *)searchTerm withProfile:(MFProfile *)p; 

這種方法可以讓我從我得到的RECT對象的數組,但它是不完全的搜索詞邊界。

任何人都可以告訴我這是否是正確的方法,請告訴我如何正確地獲取文本邊界。一些這個問題是如何重複我的最後一個問題(old)

我接受建議。

謝謝。

+0

FastPdfKit自動突出搜索結果,我不明白爲什麼你需要一些其他信息。 – MacTeo 2011-04-28 09:20:07

+0

這是iPhone應用程序,並使用那些自己的轉換,這是不可用的。現在來我的問題,我有我自己的轉換,如果我的轉換和fastpdfkit轉換相同,那麼我可以突出顯示文本。 – ajay 2011-04-28 10:14:10

+0

@MacTeo請停止將您的封閉圖書館發送給您。 「我不明白你爲什麼需要其他信息」也許是因爲他想學習如何靠自己做到這一點? – pt2ph8 2011-05-25 19:50:55

回答

3

(NSArray *)searchResultOnPage:(NSUInteger)pageNr forSearchTerms:(NSString *)searchTerm返回一個NSArray MFTextItemsMFTextItem有一個名爲highlightPath的財產,返回CGPathRef。那是你正在使用的?

如果您需要從highlightPath獲取CGRect,則可以使用CGPathGetBoundingBox

如果highlightPath對於您來說不夠準確,您將必須具有創造力並自行提出解決方案。

+0

邁克爾·弗雷德裏克你的正確我做了與你上面說的一樣,但這些座標不適合我的工作。 – ajay 2011-12-10 03:40:23