RTF (Rich Text Format) ファイルの PHP パーサーライブラリと、中身のテキストを抽出する CLI フロントエンドプログラム作った
作りました。
README の通りまだ RTF ファイルを解析してテキスト化する機能しか持ってません (extract-text-from-rtf.php
スクリプトを見て下さい)。
特徴
まだ機能が無さすぎて特にないのですが、あえて言うなら日本語に限らず、任意のコードページでエンコードされた RTF ファイルの内容をちゃんと表示できるはずです (もちろん日本語含めて)。
つまり日本語環境の Windows (=現在のロケールが CP932) で作った RTF ファイルをちゃんと文字化けせず表示できたりします。
コードページは \ansicpg
という制御ワード (control word) でコードページを指定するのですが、ちゃんとそれを読み取って変換してくれます。
…という機能を今付けました (CP932 固定だった)。
あとちゃんとパースしてノード作ったりしてるので、ある程度汎用的な作りになってます (流石にトークン毎に分解まではしてなくて、RTF ファイルから各ノードに変換してます)。 今後何らかの機能を追加する予定は今の所ないですが、何か要望等ありましたら issue でも挙げて下さい。 もちろん pull request も歓迎です。
というか PHP まだよく分かってないので全体的に指摘あれば教えて頂けると… :(´ཀ`」 ∠):
RTF ファイルの仕様について
お世話になった参考元です。