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で帳票印刷
-

執筆者:

関連記事

Railsでデータベーススキーマの変更と関連するモデルのフォーム

  gemを公開しました!詳細は記事の最後に!   新規投稿するフォームのラベルが変数を使っていて見苦しいので自分で好きなラベルを付けられるようにした いまのスキーマはこんな感じな …

状況に応じてRailsのフォームの種類を変える

By: Heidi De Vries – CC BY 2.0 目次1 前提2 仕様の決定3 正規表現の変更4 メタプログラミング第一歩5 helper6 view7 できた8 できてない9 …

Rubyでdocxをいろいろ分析してみた

  目次1 解凍~minizip2 ファイルを開く~File.open3 全ファイルを解凍せずにzip内の必要なファイルだけを開く~zipruby4 置換~gsub5 xmlの操作~noko …

no image

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

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

no image

Rubyからdocxを生成する

    前提 Rubyでdocxをいろいろ分析してみた 変数の仕様~正規表現 いろいろなパターンで試してみた 例えば、こんな文 [crayon-5a8ef6568125304146 …