2009-09-04 13 views
4

StanzaやEucalyptusなどの書籍読書アプリケーションがページごとにhtmlで分割されているので、行がクリアされ、次のページが正しい行から始まるというのは本当に面白いです。 これはどのように達成できるか考えている人はいますか?iPhone UIWebView epubsページ分割ページ

+0

どの部分が難しいかはわかりません。何を試しましたか?あなたがそれを試みたとき何が起こったのですか?あなたは何を期待していましたか? – Olie

+0

それはページネーション(http://en.wikipedia.org/wiki/Pagination)と呼ばれていますが、それは本当に簡単なことではありませんが、それほど難しいことではありません:)キャンバス上のグリフの後にグリフをレイアウトし、任意の言語が適用されます。 – krzyspmac

答えて

3

最も簡単な方法は、UIWebViewでepub内の章をレンダリングし、javascriptを使用してページの境界を計算することです。 CocoaとJSの間のインターフェイスはややこしいですが、stringByEvaluatingJavaScriptFromString:UIをUIWebView内で実行するために使用できます。

ページの境界線ができたら、window.scrollTo(x、y)を使用して章をスクロールできます。不完全な行が下から表示されないように、ページの境界に応じてUIWebViewのサイズを調整します。

+0

はい、stringByEvaluatingJavaScriptFromStringを使用して、UiWebviewのJavascriptを操作できます。 ePubはページごとにHTMLファイルを抽出するので、Objective-Cのパラメータを使ってページネーションを挿入するための関数をjavascriptに含めることができます。しかし、それはあなたがスワイプを使用する場合は、単にカウンターを置くことができますによって異なります。すべてのページが1つのuiwebviewページにある場合は、window.scrollTo(x、y)を使用できます。 – Zaldy

+0

スワイプページを使用している場合。その場合境界をどのように設定できますか? – the1pawan