iOSアプリでSVGを描画してみたいのですが
iOSでアプリを書いたことがなく、Objective-Cも未経験。とりあえず入門サイトを見つつ進んだところまでメモ。
SVGKitというライブラリのサンプルプロジェクトを実行して、自分のプロジェクトのライブラリを組み込むところまで出来た。実際に手元のデータで描画していないので、どんなSVGでも描画できるのか?など調べられてないので完成まで、もう少し時間がかかりそうだ。
iOSのアプリの書き方を調べてた
のまとめがよさげです。最初からここを見ておけばよかった。
C++なら書けるので
を見ながらざっくりコードが読めるようになった。
ARCという仕組みによってメモリ管理が楽になるそうなので
を見ながら、ちょっと理解が進んだ。
SVGKitというライブラリ
のURLは既に無効になっている。プロジェクトを作り直しているようで探しづらい。
が正解のURL。(ライセンスは商用でもOKって書いてあるよね?)
にSVGKitを使う方法がまとめられていた。
簡単にまとめると、プロジェクトの設定を開いて以下の二カ所を設定する
- [Build Settings]->[Search Paths]->[Header Search Paths]に$SDK_DIR/usr/include/libxml2を設定する。
- [Build Phases]->[Link Binary With Libraries]にQuartz 2Dとlibxmlを追加する
さらに
- ダウンロードしたSVGKitのCore、iOSフォルダを自分のプロジェクトにコピーする
これで自分のプロジェクトでSVGKitが使えるようになる。
せっかくなので、ARCを使いたいのでiOS5.1対応のアプリにしようと思ったのだが・・・
SVGKitはARC対応していないので、ビルドが通らない。
これを参考にしながら、ライブラリのコード全部に対して、-fno-objc-arcオプションをつけたところ、いくつかの警告が残るもののビルドが通った。
おまけ
失敗しない iOS In-App Purchase プログラミング - A Day In The Life
アイテム課金(ダウンロードコンテンツ)はIn-App Purchaseというらしい。APIの使い方のページを調べるところまではやってみた。