もともとiPhone用のPDFとiPad用のPDFを切り替えて使う方法は考えていなかった。それは次善の策だった。最初は、iPhoneで作成したPDFをiPadで横向きにし見開き表示するようにしようとしていた。ところが、開発が思うようにいかず、予想したより難しかった。さらにiPhone用PDFを見開きで並べてもiPadではまだまだ大き過ぎた。
iPadで表示するときにマージンを大きく計り、iPhone用PDFをレイアウトすればもうすこし読みやすいものができたかもしれないが、そうすると開発の行程が増える。そこで次善の策をとることにした。もともとPDFは固定レイアウトなので、デバイスにあわせたレイアウトを行い、使い分けるのが基本だろう。
PDFを使うといっても、PDFビューワーではデバイスにあわせてPDFを切り替えるという技はあり得ない。アプリだからこそできることである。そうすれば、デバイスサイズに合わせたレイアウトをiPhoneやiPadに反映できることになる。いずれ固定レイアウトも採用したEPUBも、複数の固定レイアウトをデバイスにあわせて差し替えるようになるかもしれない。
SakuttoBookでPDFを切り替えるバージョンは今年の春にはほぼ完成していた。iPhone用のiPad用のPDFを取り込んで、デバイスにあわせてそれぞれのPDFを自動的に表示する機能である。一部のアプリで実際に試してみた。PDFの差し替えは問題なく動作した。
ただしそのバージョンはCSVの切り替えができていなかった。たとえばSakuttoBookではナビゲーションバーに表示する目次は、SakuttoBook内に取り込まれているCSV形式のテキストファイルを読み込んでアプリに反映する仕様になっている。目次以外の画像の別ウィンドウ表示や動画もCSVで指定する。PDFをデバイスにあわせて切り替える場合は、当然ながらCSVも切り替えが必要だった。そのためリそのバージョンはリリースを見合わした。
ところがCSVファイルヘのアクセスをデバイスにあわせて切り替える場合、内部にかなり手を加えないといけないことになり、なかなか進まなかったのである。たとえば、マルチコンテンツで切り替えができたと思って検証すると、シングルコテンンツではできなかったりした。
効率のいいプログラミングも必要だし、CSVファイルを変更しても、いままでの使いやすさを失うわけにはいかない。そうこうしているうちに、時間がずるずるとかかってしまった。それがやっと完成したのである。というわけで、シングルコンテンツ版の仕組みを動画で解説した。それがこれである。
YouTube用テキストSakuttoBookVer20シングル版
iPhoneとiPadの2つのPDFを作成し、SakuttoBookに取り込む。最初からPDFは取り込んであるので、同じ名前で差し替えるだけでよい。アイコンも同じように差し替える。あとは、SakuttoBookをXcodeで開いて、それぞれのCSVファイルにiPhone用とiPad用のテキストを入力していくだけである。目次は
iPhone用 tocDefine.csv
iPad用 tocDefine-ipad.csv
という具合に使い分ける。iPhone用のテキストは「tocDefine.csv」に入力し、iPad用はCSVのファイル名に「-ipad」を追加した「tocDefine-ipad.csv」のファイルに入力するだけである。簡単にいうと、2つのコンテンツを用意し、それぞれを1つのSakuttoBookのプロジェクト内に取り込んでいくわけである。

*PDFの切り替えは「pdfDefine.csv」でiPhone用PDF、半角カンマ、iPad用PDFを指定するだけ。1つのPDFを指定する場合指定したPDFをiPhoneとiPadで表示する。デフォルトは1つのPDFしか指定していないので、切り替えするときに2つのPDFを指定する。
指定した仕様でPDFを取り込み、CSVを指定すると、あとは勝手にデバイスにあわせてPDFとCSVファイルが切り替えられるのである。
気になるのは今後のiOSデバイスのバリエーションだろう。新しいiPhoneは、画面サイズが大きくなりアスペクト比も変わるという。ただし左右のピクセル数は変わらないので、天地方向を余白にすれば、現在の仕様でも使えるだろう。iPadの7インチサイズは、iPadでのPDFを少し文字を大きめにすれば、それほど問題はないのではないかと思う。そのあたりは実際にリリースされてみないとわからない。またデバイスを切り替え可能かどうかも不明だろう。
おもったより長い道のりだったが、PDFユニバーサル版は完成した。SakuttoBookユーザーの方には無償でバージョンアップ版をお届けする予定である。マニュアルも作り直さないといけないが、それはこれからである。とりあえず、動画をご覧いただきたい。
◆Xcode 4でする実機インストールの動画チュートリアルをアップ
http://bit.ly/JEofvK
◆Xcode 4でiOSアプリの設定と申請を最短距離でする方法
http://bit.ly/Jk88Bc
◆SakuttoBook(サクッとブック)でiPhoneアプリを作る方法
http://bit.ly/mhgjCG
◆SakuttoPubliパーソナル:iPhoneブックアプリ開発・申請代行はお任せ下
さい。
http://bit.ly/swjdFW
◆Xcode 4対応のSakuttoBook Lite版ならぬTrial版、無料ダウンロード開始
http://denshi-shoseki.seesaa.net/article/263470895.html
タグ:iPhoneアプリ
【SakuttoBook日記の最新記事】
- iOS 8、Xcode 5.1.1でSa..
- 2.21リジェクト顛末記2−ストアアプリ..
- 2.21リジェクト顛末記1−Sakutt..
- SakuttoBookだけでするWebの..
- 法人向けD-U-N-S Numberを無..
- 日本語版iBookstoreローンチで始..
- 複数台のMacintoshでiOS De..
- 立川談幸師のグリム童話をSakuttoB..
- iOS 6から厳格になったiCloudの..
- Xcode4.5で必要になったiPhon..
- Xcode 4.5とiOSシミュレータ ..
- iOSアプリ内課金、リストア機能なしはな..
- アプリ内課金を回避するエクスプロイトの衝..
- iOSシミュレータと実機のキャッシュを殺..
- アプリ内課金の仕組み 2 アプリ内課金は..
- アプリ内課金の仕組み 1 アプリ内課金ア..
- SakuttoBookユニバーサル版検証..
- SakuttoBookより安い儲かるiP..
- Lionへのアップデートを誘うiOS 5..
- Xcode 4でする実機インストールの動..