1

Apple の「Page-Based Application」Xcode テンプレートとこのレンダリング アプローチを使用しています。

drawRectを介して各PDFページを独自のPDFPageViewにレンダリングし、各ページのDataViewControllerにサブビューとして追加しています。

これは機能していますが、ページのレンダリングに時間がかかるため、ページのフリックアニメーションが遅くなるため、ページをプリレンダリングしてキャッシュする方法を考えています。

これまでのところ、ページがレンダリングされた、DataViewControllers を変更可能なディクショナリに入れています。そのインデックスに対するその後の viewControllerAtIndex の呼び出しは確かに高速ですが、より長い (52 ページ、11 MB) PDF ファイルのページを最後のページまでフリックし続け、フリックして戻ると、10 ページ後に再び遅くなります。辞書に存在します。

これは正しいアプローチですか、それとも代わりにレンダリングされた PDFPageViews をキャッシュする必要がありますか?

事前にプリレンダリングしたい場合、dispatch_async を使用してレンダリングし、プリレンダリングされた PDFPageView または DataViewController をディクショナリに入れる必要がありますか?

それとも、まったく別のアプローチを使用する必要がありますか? ありがとう!

4

0 に答える 0