MOSAでSayoriレンダリングエンジンのセミナー、およびSayoriのオープンソース化予告


iPhone 5Sおよび5Cが発表されて、iOS 7 GMも配布されるというかしましい状況でありますが、MOSAでセミナーやります。

タイトルは、『オープンソース「Sayori」を事例とする、日本語XHTMLレンダリングエンジンの実装詳解』。長いぜ。レンダリングエンジンの作り方の話をします。

レンダリングエンジンとは、たとえばXHTMLが与えられたときに、それを解釈して、画面上に文字を描画するもの。それをイチから作るための解説をします。

「そんなもの、Web Kitを使えばいいじゃん」と、思われた方。確かに、アプリの一部にUIWebViewを組み込んで、HTMLのいいとこ取りをしたアプリ開発、というのがまことしやかに語られたりします。だけど、実際にやってみると、Web Kitぜんぜん役立たずな事は、皆さんご承知ですね。なんでかっていうと、でかいし、重いし、非同期だし、好きに制御できないし、内部にアクセスするにはJavaScriptだし。

もっと軽量で、Objective-Cファミリアで、ネイティブアプリから使いやすいレンダリングエンジンが欲しい、という事で作ったのが「Sayori」です。Sayoriは、私がアプリ開発をしながら、こんなレンダリングエンジンがあったらいいな、という事で作ったものです。もちろん、ルビや縦書きや縦中横といった、日本語特有の問題も解決しています。iOSアプリ『大辞泉』で使われています。これの使い方および開発時の話をします。

Sayoriの使い方の一例を紹介しますね。こんな感じで使います。

SYLabel* label;
label = [[SYLabel alloc] initWithFrame:CGRectZero];
label.html = @"<xhtml><body><h1><code>Hello Sayori</h1></body></xhtml>";
[label sizeToFit];
[self.view addSubview:label];

あと、セミナーのタイトルよく見ると、『オープンソース「Sayori」』って書いてあるでしょ。Sayoriはオープンソースになります。いま準備しています。セミナーまでには公開したいです。

一緒に開発してくれる方が登場してくれると嬉しいけど、オープンソースのコミュニティ作りはまた別の大変な仕事なので、様子を見ながらってとこでしょうね。

セミナーは、9/27(金)の18:30からです。興味ある方は、ぜひお越し下さい。

    • 城井
    • 2013年 9月27日

    いよいよ本日ですね!
    私は距離や予定の関係から参加できませんが、知り合いが参加されるのでSayoriエンジンの使い方とか間接的に教えてもらう予定です(笑)
    前回のMOSAのセミナー(CoreDataセミナー)DVDも会場販売されるそうなので買ってきてもらいます。
    今回のセミナーもDVD化したらぜひみたいと思っています。

  1. トラックバックはまだありません。