- バージョンの確認方法
postconf mail_version
- 設定等の情報を表示
postconf -n
- localhost以外からもアクセスできるようにする
- suz-lab: Postfixをlocalhost以外からも利用できるように
- 設定後、reloadではなくrestartしないと反映されない
- ドメインがIPのメールを受け入れる
- main.cfに下記を追加する
resolve_numeric_domain = yes
- postfixのバージョンが2.3以降のみ有効
- LAN内から、ドメイン部分にIPアドレスを指定したメールを受け付けるようにする
- 例えばサーバのIPアドレスが192.168.1.2の場合、クライアントからの送信先メールアドレスがtest@192.168.1.2で受取れるようにする
- main.cfを編集する
# IPアドレスが192.168.1.2で、ドメインがexample.comの場合
myhostname = 192.168.1.2.example.com
mydomain = example.com - 下記のようなwarningが出るが、受信はできた
warning: do not list domain [192.168.1.2] in BOTH mydestination and virtual_alias_domains
warning: do not list domain 192.168.1.2.example.com in BOTH mydestination and virtual_alias_domains - メール受信時に、他のプログラムにメールの内容を渡す
2008年4月26日土曜日
初めてのPostfix設定/操作メモ
主にLAN内での実験用の設定。
OpenCV用の PHPライブラリ 3つ
探したら3つあった。
- PHPで顔検出 ネットに花を咲かせましょう。 会社作りました。
- 顔を検出するPHPエクステンション
- これが一番有名なようだ
- phpizeにはphp-develが必要(だと思う)。
- 他の人による使用レポートがあった > PearBlog » Blog Archive » OpenCVをPHPで試す
- OpenCV-PHP拡張モジュールのアップデートのお知らせ - font-family: monospace
- OpenCV全体のラッパーのPHPエクステンション
- 最新版は上記リンクから
- Linuxへのインストール方法やPHPの設定、サンプルコードはこちら > OpenCV の PHP バインディングを書いてみた - font-family: monospace
- 動画をいじるサンプルPHPはこちら > OpenCV の物体認識を動画に適用する - font-family: monospace
- phpでOpenCV - Making The Road Blog
- これもOpenCV全体のラッパーのPHPエクステンション
Linux (CentOS)に OpenCVをインストールする方法
yumでインストールできるらしいが、やり方が分からなかったので地道にやる。
tarの最新版のバージョンはSourceForgeのLinux用tarのDownloadページで確認。
参考:
OpenCV のインストール < 見やすくて分かりやすい
共有ライブラリをシステムに認識させるには < ライブラリのパス設定について
tarの最新版のバージョンはSourceForgeのLinux用tarのDownloadページで確認。
wget http://nchc.dl.sourceforge.net/sourceforge/opencvlibrary/opencv-1.0.0.tar.gz
tar xvzf opencv-1.0.0.tar.gz
cd opencv-1.0.0
# 文字化け解消。viで開いて1137行目の文字化け文字を削除
vi cvaux/include/cvaux.h
# makeにはけっこう時間がかかる。
./configure
make
make install
# ライブラリのパス設定。viで新規ファイルを作り、「/usr/local/lib」とだけ記述して保存。
vi /etc/ld.so.conf.d/opencv.conf
ldconfig
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:${PKG_CONFIG_PATH}
参考:
OpenCV のインストール < 見やすくて分かりやすい
共有ライブラリをシステムに認識させるには < ライブラリのパス設定について
Vistaに PostgreSQL 8.2をインストールする方法
Windows Vista Businessに、 PostgreSQL 8.2をインストールする方法のメモ。
参考: vistaにpostgreSQL8.1をインストール - minute
注意点
参考: vistaにpostgreSQL8.1をインストール - minute
注意点
- ユーザーを追加する際、コントロールパネルに「ユーザーアカウント」という項目があり紛らわしいので注意。こちらではなく、コンピュータの管理の「ユーザーとグループ」の方からユーザーを追加する。
- PostgreSQLフォルダのアクセス権限設定は、ユーザーpostgresにフルコントロールを与えた方が良いように感じるが、それだと権限エラーでインストールに失敗する。上記参考記事のとおりにUsersにフルコントロールを与えればインストールに成功する。
- バッチファイルでmsiexecを実行するやり方ではなぜかエラーになった。
htmlSQLの基本的な使い方
WebスクレイピングのライブラリhtmlSQLの使い方メモ。
スクレイピングの準備
Webページからスクレイピング
ローカルにあるファイルからスクレイピング
文字列からスクレイピング
(文字列にconnectするというのも変だが。)
Queryの実行例
WHERE句のバリエーション
取得データ
ユーザーエージェントやリファラの変更方法
その他
スクレイピングの準備
//Snoopyをinclude
include_once("../snoopy.class.php");
//htmlSQLをinclude
include_once("../htmlsql.class.php");
//インスタンス生成(Exampleで使われている"$wsql"という変数名は、昔はWebSQLという名前だった名残り)
$wsql = new htmlsql();
Webページからスクレイピング
if (!$wsql->connect('url', 'http://codedump.jonasjohn.de/')){
print 'Error while connecting: ' . $wsql->error;
exit;
}from Example 1
ローカルにあるファイルからスクレイピング
if (!$wsql->connect('file', 'demo_data.htm')){
print 'Error while connecting: ' . $wsql->error;
exit;
}from Example 2
文字列からスクレイピング
(文字列にconnectするというのも変だが。)
if (!$wsql->connect('string', $some_html)){
print 'Error while connecting: ' . $wsql->error;
exit;
}from Example 6
Queryの実行例
if (!$wsql->query('SELECT * FROM a WHERE $class == "nav_item"')){他にも下記のメソッドが使える
print "Query error: " . $wsql->error;
exit;
}
// show results:
foreach($wsql->fetch_array() as $row){
print_r($row);
}from Example 1
- $wsql->fetch_objects(); //オブジェクトとして取り出す
- $wsql->get_result_count(); //結果の件数を取得する
WHERE句のバリエーション
- 要素の属性を指定
- WHERE $class == "nav_item"
- WHERE $id == "header"
- WHERE preg_match("/^http:///", $href)
- 要素のテキストを指定
- WHERE preg_match("/^array_/i", $text)
- 複数の条件(orもできる)
- WHERE preg_match("/^/snippets/i", $href) and preg_match("/^array_/i", $text)
- WHERE句無しでもOK
- WHERE句の中身はeval()で実行して判定される。ユーザーの入力値をそのままWHERE句に入れないように注意。(Never trust user input!)
取得データ
- 取得した各要素について、下記のデータが配列に入っている
- 各属性
- タグ名(tagname)
- テキスト(text)
ユーザーエージェントやリファラの変更方法
$wsql->set_user_agent('MyAgentName/0.9');
$wsql->set_referer('http://www.jonasjohn.de/custom/referer/');from Example 12
その他
- httpsのWebページへのアクセスはできない
- htmlSQLの内部でpreg系の関数を使ってるが、preg系はマルチバイトに対応していない。状況によってはうまく動かないかも。その場合は文字コードをUTF-8にして、u修飾子を付ければ回避できそう。
vi設定備忘録
設定方法
- Linuxユーザーのホームディレクトリにある.vimrc(このファイルが無い場合は新規作成する)に設定内容を書く
- setの右側は並べて書ける
- 例: set tabstop=4 nu
設定内容
- set nu
- 行数を表示する
- set tabstop=4
- タブの文字数をセットする
- set encoding=utf-8
set fileencodings=iso-2022-jp,sjis,utf-8 - 文字コード設定
- 参考:viエディタの文字コード自動判別
更新履歴:
2008/12/16 文字コード設定追加
2008年4月18日金曜日
はてなブックマークコメントを表示したい
masuidrive on rails - ブログにはてブのコメントを表示するhatana_bookmark_anywhere.jsが楽しげなのでこのブログにも導入しようとしたが、うまくいかなかった。
誰かウィジェット作ってくれないかな...。
誰かウィジェット作ってくれないかな...。
2008年4月16日水曜日
好きなDBの投票結果
次の中で好きなプログラム言語は?の投票結果に続き、このブログの下端で好きなDBのアンケートをとった結果。
やはりMySQLが人気。
このブログでは比較的PostgreSQLネタが多いのでPostgreSQLはもうちょっと頑張るかと思ったが。
意外なのはOracleの人気が高かったこと。業務アプリではいまだに人気だが、エンジニアにも人気とは。
あとSQL Serverが不人気なのも悲しい。個人的には嫌いじゃないけどなあ。GUIも使いやすいし。SQL文法もANSIに近いし。副問い合わせが中途半端なMySQLに比べればいいと思うけど。
ところで、その他の3票は何だったのかな。
- MySQL 9 (50%)
- PostgreSQL 5 (27%)
- Oracle 5 (27%)
- SQLite 1 (5%)
- DB2 1 (5%)
- SQL Server 0 (0%)
- その他 3 (16%)
やはりMySQLが人気。
このブログでは比較的PostgreSQLネタが多いのでPostgreSQLはもうちょっと頑張るかと思ったが。
意外なのはOracleの人気が高かったこと。業務アプリではいまだに人気だが、エンジニアにも人気とは。
あとSQL Serverが不人気なのも悲しい。個人的には嫌いじゃないけどなあ。GUIも使いやすいし。SQL文法もANSIに近いし。副問い合わせが中途半端なMySQLに比べればいいと思うけど。
ところで、その他の3票は何だったのかな。
Windowsで GREPできるフリーソフト
Perl互換の正規表現でテキストファイルをGREPするツール。
テキストファイルで開くにはファイルサイズが大きすぎる場合や、大量のテキストファイルから特定の文字列を検索したい場合に便利。
JGREP
GUIが分かりやすく使いやすい。
そのうえ動作が軽い。160MBのファイルをGREPしたら十数秒で終わった。
デフォルトでは、ファイルサイズが10MB以下のファイルだけをGREPする。
ファイルサイズ制限は変更できるが、変更欄に入力できるのが3桁までなので、最大999MBまで。(iniファイル(JGREPを起動すると作成される)を直接変更すればいけるかも?)
また、GREP結果からエディタを起動するにはエディタの登録が必要。いっしょに起動パラメータも入力しなければ登録を完了できない。
Sakuraエディタの場合の起動パラメータは「"%F" -Y=%L」。
その他の主なエディタの起動パラメータは設定ダイアログに書いてある。
via. Windows上でgrepできるフリーソフト「JGREP」 - F.Ko-Jiの「一秒後は未来」
テキストファイルで開くにはファイルサイズが大きすぎる場合や、大量のテキストファイルから特定の文字列を検索したい場合に便利。
JGREP
GUIが分かりやすく使いやすい。
そのうえ動作が軽い。160MBのファイルをGREPしたら十数秒で終わった。
デフォルトでは、ファイルサイズが10MB以下のファイルだけをGREPする。
ファイルサイズ制限は変更できるが、変更欄に入力できるのが3桁までなので、最大999MBまで。(iniファイル(JGREPを起動すると作成される)を直接変更すればいけるかも?)
また、GREP結果からエディタを起動するにはエディタの登録が必要。いっしょに起動パラメータも入力しなければ登録を完了できない。
Sakuraエディタの場合の起動パラメータは「"%F" -Y=%L」。
その他の主なエディタの起動パラメータは設定ダイアログに書いてある。
via. Windows上でgrepできるフリーソフト「JGREP」 - F.Ko-Jiの「一秒後は未来」
2008年4月9日水曜日
PHPフレームワーク 9つの比較
- CakePHP
- Railsの影響を強く受けている
- 参考: CakePHPで高速Webアプリ開発:第1回 CakePHPを使いたくなる5つの特徴|gihyo.jp … 技術評論社
- Mojavi
- シンプルなMVCフレームワーク
- Strutsの影響を受けている
- 参考: MVCフレームワークMojaviを使ってみよう
- symfony
- Railsの影響を強く受けている
- MVCモデルレイヤーにMojaviのコードを使っている
- 参考: symfony book 日本語ドキュメント
- Zend_Framwork
- Zend謹製のMVCフレームワーク+ライブラリ
- Maple
- 各ページを設定ファイルで制御するのが特徴的
- 参考: Maple - Y-110's Wiki
- Ethna
- Strutsの影響を受けている
- rhaco
- Webブラウザからプロジェクトを作っていく感じがCMSっぽい
- 参考: 404 rhaco not ないわー - 初めての rhaco アプリ、その1
- Piece Framework
- "ステートフルでセキュア"
- 参考: Piece Frameworkを導入する - スコトプリゴニエフスク通信
- P2
- Zend_FrameworkやMapleの影響を受けている
- 参考: p2-php-framework - Google Code
Google Calendar API で日本の祝日データを取得
Google Calendarから日本の祝日データを取得する方法についての調査メモ。
ポイント
日本の祝日カレンダーのID
URLサンプル
http://www.google.com/calendar/feeds/japanese@holiday.calendar.google.com/public/full-noattendees?start-min=2008-01-01&start-max=2008-01-31&max-results=10&alt=json-in-script&callback=callbackHoliday
取得データサンプル
参考
Tam-calendar.js に Google Calendar の祝日データを取り込む « iDeasilo
API Reference Guide - Google Calendar APIs and Tools - Google Code (本家リファレンス)
API Reference Guide - Google Calendar APIs and Tools - Google Code (上記の、取得データ内容の指定についての部分)
Using JSON with Google Data APIs - Google Data APIs - Google Code (JSONPについてなど)
Google カレンダー利用規約
Googleカレンダーの「日本の祝日」が間違っている | Google Mania - グーグルの便利な使い方
ポイント
- GDataを使う場合はデベロッパーKEYが必要だが、GDataを使わなくても日本の祝日カレンダーは取得できる。
- 祝日名と日付を取得したい場合、Projection valueは"full-noattendees"で。(fullより少しだけデータが小さくなる。)
- 利用規約はGoogleカレンダー利用規約。
日本の祝日カレンダーのID
- japanese__ja@holiday.calendar.google.com (Googleカレンダーの公式版)
- japanese@holiday.calendar.google.com (Googleカレンダーのもう1つのID)
- outid3el0qkcrsuf89fltf7a4qbacgt9@import.calendar.google.com (mozilla.org版)
- mozilla.orgにあるカレンダーをインポートしたもの
- 下記の休日に対応していて、最も精度が高い
- 2008/5/6の振替休日
- 2009/5/6の振替休日
- 2012/3/20の春分の日 (Google公式版では3/21になっている)
- 元はCalendar - Holiday files (mozzila Calendar Project)
- 他にも、Googleカレンダー内で検索するとたくさんある
URLサンプル
http://www.google.com/calendar/feeds/japanese@holiday.calendar.google.com/public/full-noattendees?start-min=2008-01-01&start-max=2008-01-31&max-results=10&alt=json-in-script&callback=callbackHoliday
取得データサンプル
callbackHoliday({
"version":"1.0",
"encoding":"UTF-8",
"feed":{
"xmlns":"http://www.w3.org/2005/Atom",
"xmlns$openSearch":"http://a9.com/-/spec/opensearchrss/1.0/",
"xmlns$batch":"http://schemas.google.com/gdata/batch",
"xmlns$gCal":"http://schemas.google.com/gCal/2005",
"xmlns$gd":"http://schemas.google.com/g/2005",
"id":{"$t":"http://www.google.com/calendar/feeds/japanese%40holiday.calendar.google.com/public/full-noattendees"},
"updated":{"$t":"2008-02-13T10:01:04.000Z"},
"category":[{"scheme":"http://schemas.google.com/g/2005#kind","term":"http://schemas.google.com/g/2005#event"}],
"title":{"type":"text","$t":"Japanese Holidays"},
"subtitle":{"type":"text","$t":"Japanese Holidays"},
"link":[
{
"rel":"alternate",
"type":"text/html",
"href":"http://www.google.com/calendar/embed?srcu003djapanese@holiday.calendar.google.com"
},
{
"rel":"http://schemas.google.com/g/2005#feed",
"type":"application/atom+xml",
"href":"http://www.google.com/calendar/feeds/japanese%40holiday.calendar.google.com/public/full-noattendees"
},
{
"rel":"http://schemas.google.com/g/2005#batch",
"type":"application/atom+xml",
"href":"http://www.google.com/calendar/feeds/japanese..."
},
{
"rel":"self",
"type":"application/atom+xml",
"href":"http://www.google.com/calendar/feeds/japanese..."
}
],
"author":[{"name":{"$t":"Holiday Calendars"},"email":{"$t":"doozer.holiday.calendars@gmail.com"}}],
"generator":{"version":"1.0","uri":"http://www.google.com/calendar","$t":"Google Calendar"},
"openSearch$totalResults":{"$t":"2"},
"openSearch$startIndex":{"$t":"1"},
"openSearch$itemsPerPage":{"$t":"10"},
"gCal$timezone":{"value":"Etc/GMT"},
"entry":[
{
"id":{"$t":"http://www.google.com/calendar/feeds/japanese..."},
"published":{"$t":"2006-09-06T04:52:22.000Z"},
"updated":{"$t":"2006-09-14T08:16:28.000Z"},
"category":[{
"scheme":"http://schemas.google.com/g/2005#kind",
"term":"http://schemas.google.com/g/2005#event"
}],
"title":{"type":"text","$t":"成人の日"},
"content":{"type":"text","$t":""},
"link":[
{
"rel":"alternate",
"type":"text/html",
"href":"http://www.google.com/calendar/event?...",
"title":"alternate"
},
{
"rel":"self",
"type":"application/atom+xml",
"href":"http://www.google.com/calendar/feeds/japanese..."
}
],
"author":[{"name":{"$t":"Japanese Holidays"}}],
"gd$recurrence":{"$t":"DTSTART..."},
"gd$eventStatus":{"value":"http://schemas.google.com/g/2005#event.confirmed"},
"gd$transparency":{"value":"http://schemas.google.com/g/2005#event.opaque"},
"gCal$uid":{"value":"24cihigm..."},
"gCal$sequence":{"value":"0"},
"gd$when":[{"startTime":"2008-01-14","endTime":"2008-01-15"}],
"gd$where":[{"valueString":""}]
},
{
"id":{"$t":"http://www.google.com/calendar/feeds/japanese..."},
"published":{"$t":"2006-09-06T04:52:22.000Z"},
"updated":{"$t":"2006-09-14T08:16:28.000Z"},
"category":[{
"scheme":"http://schemas.google.com/g/2005#kind",
"term":"http://schemas.google.com/g/2005#event"
}],
"title":{"type":"text","$t":"元日"},
"content":{"type":"text","$t":""},
"link":[
{
"rel":"alternate",
"type":"text/html",
"href":"http://www.google.com/calendar/event?...",
"title":"alternate"
},
{
"rel":"self",
"type":"application/atom+xml",
"href":"http://www.google.com/calendar/feeds/japanese..."
}
],
"author":[{"name":{"$t":"Japanese Holidays"}}],
"gd$recurrence":{"$t":"DTSTART..."},
"gd$eventStatus":{"value":"http://schemas.google.com/g/2005#event.confirmed"},
"gd$transparency":{"value":"http://schemas.google.com/g/2005#event.opaque"},
"gCal$uid":{"value":"egd5o1dg438h..."},
"gCal$sequence":{"value":"0"},
"gd$when":[{"startTime":"2008-01-01","endTime":"2008-01-02"}],
"gd$where":[{"valueString":""}]
}
]
}
});
参考
Tam-calendar.js に Google Calendar の祝日データを取り込む « iDeasilo
API Reference Guide - Google Calendar APIs and Tools - Google Code (本家リファレンス)
API Reference Guide - Google Calendar APIs and Tools - Google Code (上記の、取得データ内容の指定についての部分)
Using JSON with Google Data APIs - Google Data APIs - Google Code (JSONPについてなど)
Google カレンダー利用規約
Googleカレンダーの「日本の祝日」が間違っている | Google Mania - グーグルの便利な使い方
2008年4月6日日曜日
Flashから 別Windowを開く時にポップアップブロックを回避する方法
参考サイトのメモ。
ActionScript 1.0/2.0 の場合
プログラマ気分 | 【AS1.0/2.0】Flash から新規ウィンドウを開く際にポップアップブロックを防ぐ
ActionScript 3.0 の場合
IE、FirefoxでFlashから新規ウィンドウを開く際にポップアップブロックされる件の回避 - 0x集積蔵
肝は wmode="transparent" のようだが、Flash上に入力項目がある場合、wmodeをtransparentに設定した場合、IEでマルチバイト(日本語)入力ができなくなる問題点があるので注意。
あと、上記のとおりに作っても、なぜかポップアップブロックにひっかかる場合がある。(原因不明)
ActionScript 1.0/2.0 の場合
プログラマ気分 | 【AS1.0/2.0】Flash から新規ウィンドウを開く際にポップアップブロックを防ぐ
ActionScript 3.0 の場合
IE、FirefoxでFlashから新規ウィンドウを開く際にポップアップブロックされる件の回避 - 0x集積蔵
肝は wmode="transparent" のようだが、Flash上に入力項目がある場合、wmodeをtransparentに設定した場合、IEでマルチバイト(日本語)入力ができなくなる問題点があるので注意。
あと、上記のとおりに作っても、なぜかポップアップブロックにひっかかる場合がある。(原因不明)
ブログを携帯から見たときにリンクや外部画像を使えるブログサービスの調査
大手のブログサービスにおいて、携帯電話から見た時に次の2点について使えるかどうかの調査。
デフォルトの設定でどうなるかを調べたので、もしかしたら設定をすれば変えられる部分もあるかもしれない。
リンクも画像も使えるブログ
リンクのみ使えるブログ
画像のみ使えるブログ
リンクも画像も使えないブログ
携帯で見たときに外部リンクで意思確認ページのワンクッションを入れたくない場合、yaplog!、JUGEM、Seesaaあたりが良さそう。
Yahoo!は使いづらいし、はてなは癖が強いから。はてなモバイルゲートウェイを活用するならはてなでもいいかも。
- 外部サイトへのリンク
- 外部サーバ上の画像ファイルの表示
デフォルトの設定でどうなるかを調べたので、もしかしたら設定をすれば変えられる部分もあるかもしれない。
リンクも画像も使えるブログ
- yaplog!
- JUGEM
- Blogger
- Yahoo!ブログ
- 画像やリンクを書くためにはWiki文法で書く必要あり
- はてなダイアリー
- リンク先ははてなモバイルゲートウェイによって変換されたページになる
- Seesaaブログ
- 画像はそのまま表示せずにリンクになる
- リンク内に画像を含む場合、リンク先に遷移できない (画像表示へのリンクになってしまう)
- エキサイトブログ
- リンクは直接遷移ではなく、意思確認ページを挟む
- 意思確認ページから、URLのメール送信が可能
- ココログ
- リンクも画像も直接遷移ではなく、意思確認ページを挟む
- リンク内に画像を含む場合、画像を表示できない
リンクのみ使えるブログ
- livedoorブログ
- リンクは直接遷移ではなく、意思確認ページ(巨大な広告あり)を挟む
画像のみ使えるブログ
- FC2ブログ
- 画像はそのまま表示せずにリンクになる
リンクも画像も使えないブログ
- アメーバブログ
- 楽天ブログ
- gooブログ
- nowa
携帯で見たときに外部リンクで意思確認ページのワンクッションを入れたくない場合、yaplog!、JUGEM、Seesaaあたりが良さそう。
Yahoo!は使いづらいし、はてなは癖が強いから。はてなモバイルゲートウェイを活用するならはてなでもいいかも。
Flashでページをめくるライブラリのまとめ
実際に使用する場合は、最新情報やライセンスについて再度確認した方が良い。
2008/09/16追記: Flashでページをめくるライブラリで逆方向にめくる方法もどうぞ。
- Page Flip >> PiXELWiT by PiXELWiT
- 元祖?
- ソースのダウンロード可能
- freeのようだ ("Why I gave it away: Something About Sluggy.")
- コンテンツはfla内で静的に定義している。変更するにはBound PagesのActionsレイヤーのフレーム1のスクリプトを変更する (attachMovieしているところ)
- Free PageFlip 2.25 by Iparigrafika
- Dynamic PageFlipのfree版
- ソースのダウンロード可能
- ライセンスに関する記述あり (flaファイル内のactionsレイヤーのフレーム5の先頭に書いてある)
//this code is written by Macc 2004.11.01 //abel@iparigrafika.hu // //this code is opensource // //free use! //but a small credit would be nice:)
- コンテンツはfla内で静的に定義している。変更するにはactionsレイヤーのフレーム5のスクリプトを変更する (addPgaeしているところ)
- Dynamic PageFlip 3.4 by Iparigrafika
- 上記Free PageFlipの高機能版
- 有償 (25€~)
- コンテンツを外部XMLで定義できる
- Dynamic Page Flip v2 from shift+control by 76design
- Iparigrafika版の2.13を改良したもの
- ソースのダウンロード可能
- ライセンスはCreative Commons Attribution-Share Alike 2.5 Canada? (サイトの最下部に書いてある)
- コンテンツを外部XMLで定義できる
- ページごとに、プリロードするかどうかを定義できる
- pageFlipper - Flash Page Flipper - Flashloaded
- 有償 ($34.95)
- Quietly Scheming » FlexBook
- Flexコンポーネント
- ソースのダウンロード可能
- 手軽に作れる、ページめくりのアニメ - [Flash]All About
- 自分でゼロから作る作り方の説明
- 簡単に、それなりのものを作れる
- ページの端をめくれるようにしたり、ページの裏側にコンテンツを表示するなどの高度なことまでは無理
2008/09/16追記: Flashでページをめくるライブラリで逆方向にめくる方法もどうぞ。