query: tag:prawn

ruby>>
pdf.start_new_page
<<--

|caption=オプション
|
|名前,説明,例
|
|:layout,利用するレイアウト,:landscape
|:size,大きさ,"LEGAL" "A4"
|:left_margin,マージン左,50
|:right_margin,マージン右,50
|:top_margin,マージン上,50
|:bototm_margin,マージン下,50

ruby>>
pdf.start_new_page(:left_margin=>48, :size=>"A4")
pdf.page_count # => 2
<<--

posted by maiha maiha on Thu 29 Jan 2009 at 19:29 with 0 comments

以前書いた**prawnの記事**ですが、その時のgemは0.1.2でした。で色々ggってソースを読んでいくうちにどうやら最新だと:wrap => :characterオプションがあることがわかりました。というわけでgithubからインストールした時のメモです。

###gems.githubにない
http://gems.github.com/list.html
を見てもprawnはありません。ということでcloneしてインストールすることにしました。

###cloneしてgemを生成, インストール
shell>>
$git clone git://github.com/raggi/prawn.git prawn.git
$ cd prawn.git
$ rake gem
$ ls pkg/prawn-0.1.99.gem
pkg/prawn-0.1.99.gem
$sudo gem install pkg/prawn-0.1.99.gem
$gem search prawn

*** LOCAL GEMS ***
prawn (0.1.99, 0.1.2)
<<--

###gemのバージョンについて
prawnのバージョンが0.1.99とでていますが、あくまでもpre-0.2としての位置づけだそうで(作者のsandalさんに教えてもらった)、バグ報告などの場合は、git logで表示されるcommitの後のSHA1をバージョンとして用いるそうです。

shell>>
$git log
commit c92a03685cd013af8767e7327b3a5def74a0a2ff
Date: Wed Aug 20 17:45:18 2008 -0400

Minimal changes to support character based wrapping

<<--

posted by satoko satoko on Tue 9 Sep 2008 at 11:15 with 0 comments

prawnto(プラウント?)使ってみました。まだ課題があるのですが、現時点でのメモです。

http://cracklabs.com/prawnto
http://cracklabs.com/prawnto/demos:デモ一覧
http://github.com/thorny-sun/prawnto/tree/master
git://github.com/thorny-sun/prawnto.git

###生成したPDF
以前の記事をPDFにしてみました。
生成されたPDF:test.pdf

###pluginのインストール
prawnライブラリを使っているので、ますprawnをインストール。その後prawnto pluginインストール。
shell>>
sudo gem install prawn
./script/plugin install git://github.com/thorny-sun/prawnto.git
<<--

###(日本語表示用に)IPAフォントをダウンロード
下記からダウンロードして解凍、ttfファイルをアクセス可能なところにコピーします。
http://ossipedia.ipa.go.jp/ipafont/

配置するとしたら下記でしょうか。

  • #{RAILS_ROOT}/vendor/fonts
  • #{RAILS_ROOT}/vendor/font_ttf
  • /usr/share/fonts/
  • /usr/local/share/fonts/)

###Rails controller, view
まずはController。
page_layoutは:portrailt(縦)か:landscape(横)のどちらかです。
rails>>
#controller
respond_to do |format|
format.html { render :action => 'show' }
format.pdf {
prawnto :prawn => {
:page_layout => :portrait, # 縦
:page_size => "A4",
:left_margin => 36,
:right_margin => 24,
:top_margin => 24,
:bottom_margin => 24},
:inline => true
}
end
<<--

そしてview(show.pdf.prawnという形式のファイル)

rails>>
#show.pdf.prawn
pdf.font "#{RAILS_ROOT}/public/ipag.ttf"
pdf.text @article.title, :size => 36
pdf.text @article.body
pdf.text "This page has very wide left and right margins, causing a squeeze. " * 10
pdf.text "これはテストです。" * 20
pdf.font "Times-Roman"
pdf.text "abcdefghijklmnopqrstu"* 20, :wrap => :character
pdf.text "http://thebogles.com/blog/2007/10/how-to-add-google-adsense-for-mobile-to-your-ruby-on-rails-site/"
<<--

###現時点での課題

  • URLや日本語の文章など空白がない文字列?だと折り返されない
    => demoで紹介されている:wrap => :characterオプションが0.1.2だとなさそう?
  • レイアウト枠のpdfを重ねたりする機能はない?(発見できず)
posted by satoko satoko on Thu 4 Sep 2008 at 17:04 with 2 comments