ランプの中身(Ruby on Railsのシステム開発)
ランプの中身(Ruby on Railsのシステム開発)では、株式会社ケイビーエムジェイのRuby on Railsエンジニアが蓄積したノウハウを公開しています。Ruby on Railに関する技術解説や実践的なノウハウなど、開発現場の技術に則したコンテンツを随時追加していきます。 初心者の方でもわかりやすい技術解説を心がけています。リクエスト、ご質問も受け付けいますので、お気軽にコメントを記述して下さい。

< Rubyでどう書く?:重複したRSSをま... | メイン | Rubyでどう書く?特別編:Matzから... >

ZDnetで連載Ruby記事
2008.07.11

Rubyでどう書く?:RubyでWord文書を作成する

 KBMJがZDnetで連載している記事を紹介します。コメントなどありましたらそちらでお願いします。

Rubyでどう書く?:RubyでWord文書を作成する 三浦義太郎(KBMJ)

RubyでPDFが作成できるなら、Wordだってできちゃうだろう――そんな試みです。

問題

第5回目のテーマは第2回「RubyでPDF履歴書を作成する」の変奏です。

第2回はRubyでPDF文書を作成するというお題でしたが、Microsoft Word文書を作成したいということも多いと思います。

というわけで、今回はRubyでWord文書を作成してみたいと思います。

回答例

require 'rdoc/template'
template = TemplatePage.new IO.read('name.xml')
File.open("result.xml", 'wb') do |f|
template.write_html_on(f, {'name' => $*[0]})
end

簡単すぎですね。

解説

今回のミソは、Word 2003から使えるようになったXML文書を使用しているところです。

元の文書は「name.xml」で、これはWord(筆者の環境では2007)で作成したものです。そのため、レイアウトはWordで行うことが可能です。

あとは文字を置き換えたい部分を「%name%」としてあげて、XML文書形式で保存します。

Wordで文書の元が作れるのが大きなメリットですね。

プログラムの実行は

ruby [作成したプログラム] [%name%に置き換えたい文字列] 

で、プログラムと同じフォルダにresult.xmlというファイルが作成されます。

開いてみると「%name%」が置き換えたい文字列になっているはずです。

最後に――

WordのXML文書は、無償で提供されている2003以降のWordビューワを導入することで閲覧できるので、対応したバージョンのWordを持っていなくても大丈夫です。

この機会に社内文書の作成などにRubyを導入してみてはどうでしょうか(まあ、Rubyじゃないとできないというわけじゃないですが……)。

 |トラックバック (0)

ブックマークに追加する

トラックバック URL

KBMJのWebソリューション
Ruby on Rails Summer Festival 2008開催決定!!

TOPICS

2008/08/14
ZD Net Builder」の連載記事です。第七回は「Rubyでどう書く?:RubyCocoa+Core Animationでお手軽アニメーション」が掲載されました。

2008/08/06
ZD Net Builder」の連載記事です。第六回は「Rubyでどう書く?特別編:Matzからのお題」が掲載されました。

2008/07/29
アットマーク・アイティ」にケータイWebアプリ開発、9つの注意点が掲載されました。

2008/07/11
ZD Net Builder」の連載記事です。第五回は「Rubyでどう書く?:RubyでWord文書を作成する」が掲載されました。

全体のRoR最新ブログ一覧

プロフィール

  • goto
  • 23 歳
  • 毎週KBMJでは、"ZDnet"にRubyの記事を連載しています。
    ここでは、その記事を紹介します。

ブログの購読

RSS

timelog
株式会社ケイビーエムジェイロゴ