fukuoka ruby award 2012

Post on 28-May-2015

3.625 Views

Category:

Technology

10 Downloads

Preview:

Click to see full reader

DESCRIPTION

第4回フクオカRuby大賞で「大賞」を受賞しました。その授賞式で発表した資料です。

TRANSCRIPT

Open Source Reporting Solution

株式会社マツケイ日高 克也Katsuya Hidaka

Twitter: @hidakatsuyagithub: hidakatsuyaEmail: hidakatsuya@gmail.com

RubyによるRubyのための帳票ソリューション

提供

株式会社マツケイ(島根県)

しまねけん?

なぜRubyの帳票ツール?

✗ 日本語未対応...

✗ GUIデザイナがない

✗ さすがに高い

✗ さすがに遅い

✗ 使いにくい...

満足できるものが無くて困っていた

なら、作ればいい✓ Pure Ruby!✓オープンソース✓業務システムでも使える

特徴

ThinReports Editor

๏ 専用デザイナ๏ マルチプラットフォーム対応๏ GNU GPLv3๏ 多くのOSS、標準技術で実現

Webkit/Qt/HTML5/CSS3/SVG/JavaScript/Closure Tools etc..

ThinReports Editor

ThinReports Generator

๏ Editorで作成したレイアウトから帳票を生成するライブラリ (PDF)

๏ Pure Ruby๏ マルチプラットフォーム対応๏ The MIT License

ThinReports Generator

こうやって使います。

1. 帳票レイアウトを作る

# coding: utf-8require 'thinreports' report = ThinReports::Report.new :layout => 'question.tlf'

report.start_new_page do item(:answer).value('Ruby!!!')end

report.generate_file('question.pdf')

2. スクリプトを書いて実行

% ruby question.rb⏎

3. PDFのできあがり

できること

一覧表の自動生成

詳細行が領域を溢れた場合は、自動的に改頁される。現時点では「ヘッダー/フッター/ページフッター/詳細行」を持つ一覧表を作成できる。

外字の表示

Windowsの外字エディタで作成した外字ファイル(EUDC.TTE)をThinReportsに指定することで、外字データを含むPDFを正しく表示することが可能。

グラフやバーコードの表示

イメージブロック機能(動的画像の埋込み機能)とグラフやバーコード画像を生成するライブラリを組み合わせることで、柔軟に対応できる。

パスワード/操作制限

仕様書の自動生成

Editor から HTML/CSV 形式で仕様書を生成することが可能。これによって「デザインとコードの分離」をサポート。

Railsでも# Gemfilegem 'thinreports'

# app/controller/test_controller.rbclass TestController < ApplicationController def render_reports report = ThinReports::Report.new :layout => '/path/to/layout.tlf' report.start_new_page do # do something end

send_data report.generate, :filename => 'foo.pdf', :type => 'application/pdf', :disposition => 'attachment' endend

その他๏ 画像の埋め込み(静的・動的)๏ 動的なスタイル操作

など

できないことイマイチなこと

フォントは4種類のみ๏ Helvetica (Sans-serif)๏ Courier New (Monospace)๏ Times New Roman (Serif)๏ IPAフォント (明朝/ゴシック)

一覧表の機能がまだまだ๏ 小計行を簡単には実現できない現在は、詳細行/ページフッター/フッターのみ

๏ 高さが可変な行は実現できないかなり難しいかもしれない...

๏ Editor 上の操作性がイマイチ

今後

0.7.5リリース๏ 2012.2 2012.4予定๏ Editorの国際化๏カスタムフォント機能๏操作性の改善

thinreports-rails๏ 2012.2 2012.3予定๏Rails3用拡張ライブラリ๏Rails3で、より簡単にThinReportsを使える

ご案内

www.thinreports.org

ThinReports に興味のある方は、まずはこちらへ

github

ThinReports の全てのソースコードは、github で公開

osc.matsukei.net

ロードマップやタスク、進捗状況の閲覧に加えて、ドキュメントやフォーラムも

お知らせ

有償サポート始めました๏メールによるQAが基本๏メニューはありません๏公式サイトよりお問い合せ下さい

ありがとうございました

top related