RubyOnRailsで帳票印刷

Rails4でdocxを読み書き〜gem docx

投稿日:

github.com/chrahunt/docx

rubyでもいいんだけど、rubygemでのバージョンが最新でなかったのでRailsアプリを作って試してみた

環境

  • Mac OSX Merverick
  • Ruby 2.1.1
  • Rails 4.0.3
  • docx 0.2.04

準備

適当にワードファイルを作っておく.

tableも扱うので表もあるワードファイルが望ましい.

日本語ファイル名でもOK.

Railsのサンプルアプリを作り、tmp以下にでもdocxファイルをいれておく.

以下のサンプルはこんな感じ

Gemfile

Controller

View

screenshot

読みこみ

ブックマーク

Wordにはブックマークという機能があるらしい.

ブックマークを追加または削除する

docxジェムでは、ブックマークの前後に文字を書き込むようにしている.

bookmarkの一覧を読み出すには、

公式のREADMEを見るとわかるけど、名前とオブジェクトを抜き出せるぽい

テーブル

新機能のテーブル操作

書きこみ

ブックマークを基本にinsert_text_afterかinsert_multiple_linesを使う.(公式のREADMEはメソッド名が間違っているので注意)

insert_text_afterは、ブックマークの後ろに文字列を挿入する.

ブックマークの場所は表の中でもOKだった.

insert_text_beforeもある.

insert_multiple_linesは、配列を渡して配列の要素を1行として、対象の行を書き換える.

もちろん、表の中でもOK.

結論

日本語が通るって素晴らしい

-RubyOnRailsで帳票印刷
-

執筆者:

関連記事

no image

Rubyでエクセル帳票印刷(.xls)~spreadsheet

  pdfとdocxとxlsが作成できれば帳票印刷で困ることはなさそう spreadsheetというgemを使ってみた 参考 dragonstar.asablo.jp/blog/2009/0 …

Rails3で帳票印刷を試す~thinreports

  www.thinreports.org/ github.com/thinreports/thinreports-rails3-example 目次1 とりあえずサンプルを試してみた2 ソ …

docx生成アプリのサンプルを公開~simple_docx_generater

自作gemを使ったRailsアプリの作成例を公開しました!   サインインの情報はつぎのとおりです テンプレートの登録・編集権限のあるマネージャー manager1@example.com

no image

RubyでDocxを分解してみた~Nokogiri::XML::SAX

    参照 Rubyでdocxをいろいろ分析してみた 今度はsaxのアプローチでdocxのword/document.xmlを分解してみた 使い方は、Nokogiri::XML: …

no image

Rubyでxmlの要素の追加など~nokogiri

目次1 はじめに2 文字列をパースしてxmlとして読み込んでそのままxmlとして出力する3 nodeの追加4 nodesetの作成と追加5 DocumentFragmentの作成と追加 はじめに 参考 …