2010-08-07 22 views
2

在我的應用程序中,我顯示PDF頁面並希望允許用戶通過在頁面上方的徒手畫進行「標記」文檔。我可以處理Quartz代碼進行徒手繪製,但是我可以使用什麼方法來保存這些「標記」,以便下次用戶將PDF加載到應用程序時可以在頁面上重新顯示它們?在iPhone上保存通過PDF呈現的石英圖紙操作系統

感謝,

//斯科特

回答

0

問題:

  • 鑑於 PDF頁面等一系列的繪圖指令,
  • 應用應該能夠重複那些頁面的繪圖說明
  • 該應用程序已經退出之間收到繪圖指令和查看頁面。

解決方案:

  • 保存到PDF頁面和繪圖指令到永久存儲的參考。
  • 加載查看頁面的繪圖說明。
  • 渲染繪圖指令。

保存PDF頁面引用可以很簡單,只需保存與PDF和當前頁面關聯的URL即可。

由於UIBezierPath符合NSCoding,所以保存繪圖指令可以像存檔用作繪圖指令的UIBezierPath一樣簡單。如果您使用的是CGMutablePathRef,則可以從CGPath初始化UIBezierPath並存檔新初始化的貝塞爾路徑。取消存檔後,您可以從UIBezierPath中檢索CGPath

如果您不需要用戶能夠在以下會話中編輯繪圖說明,那麼您可以將繪圖渲染爲靜態圖像,並在下次加載並繪製該圖形。在該會話之後,將這些說明渲染到原始圖像上,並保存,然後繼續。

相關問題