2009-09-01から1ヶ月間の記事一覧

prawn:Prawn::Font#line_gap

#!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new f = Prawn::Font.load(pdf, "Times-Roman") p f p f.line_gap pdf.font_size(24) p f.line_gap で、 Prawn::Font::AFM< Times-Roman: 12 > 2.592 5.184

prawn:Prawn::Font#inspect

#!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new f = Prawn::Font.load(pdf, "Times-Roman") p f p f.inspect で、 Prawn::Font::AFM< Times-Roman: 12 > "Prawn::Font::AFM< Times-Roman: 12 >"

prawn:Prawn::Font#identifier_for

#!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new f = Prawn::Font.load(pdf, "Times-Roman") p f p f.identifier_for("hoge") で、 Prawn::Font::AFM< Times-Roman: 12 > "F1.hoge"subset って何を指定すれば???

prawn:Prawn::Font#height_at

#!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new f = Prawn::Font.load(pdf, "Times-Roman") p f p f.height_at(12) p f.height_at(24) pdf.font_size(24) p f.height_at(12) p f.height_at(24) で、 Prawn::Font::AFM< Times-Roman: 12 > 1…

prawn:Prawn::Font#height

#!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new f = Prawn::Font.load(pdf, "Times-Roman") p f p f.height pdf.font_size(24) p f.height で、 Prawn::Font::AFM< Times-Roman: 12 > 13.392 26.784

prawn:Prawn::Font#descender

#!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new f = Prawn::Font.load(pdf, "Times-Roman") p f p f.descender pdf.font_size(24) p f.descender で、 Prawn::Font::AFM< Times-Roman: 12 > -2.604 -5.208

prawn:Prawn::Font#ascender

#!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new f = Prawn::Font.load(pdf, "Times-Roman") p f p f.ascender pdf.font_size(24) p f.ascender で、 Prawn::Font::AFM< Times-Roman: 12 > 8.196 16.392

prawn:Prawn::Font#add_to_current_page

用途、引数、不明… #!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new #p pdf.font_families f = Prawn::Font.load(pdf, "Times-Roman") f.add_to_current_page("") #p pdf.font #p pdf.font_families Prawn::Font::AFM#register の引数が未使…

prawn:Prawn::Font.new

#!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new f = Prawn::Font.new(pdf, "Times-Roman") p f で、 Prawn::Font< Times-Roman: 12 >

prawn:Prawn::Font.load

#!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new f = Prawn::Font.load(pdf, "Times-Roman") p f で、 Prawn::Font::AFM< Times-Roman: 12 >

prawn:Prawn::Errors

>> require "rubygems" => true >> require "prawn" => true >> Prawn::Errors::constants => ["FailedObjectConversion", "UnknownOption", "InvalidName", "UnknownFont", "NameTaken", "NotOnPage", "UnsupportedImageType", "InvalidPageLayout", "Undef…

prawn:Prawn::Document::Text#text

まんま #!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new pdf.text "Hello World", :at => [100,100] pdf.text "Goodbye World", :at => [50,50], :size => 16 pdf.text "Will be wrapped when it hits the edge of your bounding box" pdf.t…

prawn:Prawn::Document::PageGeometry

#!/usr/bin/env ruby require "prawn" p Prawn::Document::SIZES で、 {"C9"=>[113.39, 161.57], "B8"=>[175.75, 249.45], "A10"=>[73.7, 104.88], "A7"=>[209.76, 297.64], "RA0"=>[2437.8, 3458.27], "B10"=>[87.87, 124.72], "B9"=>[124.72, 175.75], "A8…

prawn:Prawn::Document::Internals#ref

コードとしてどう使えば良いか良く分からないけど、Prawn::Document::Annotations#annotate とかで利用例があるみたい

prawn:Prawn::Document::Internals#proc_set

#!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new pdf.proc_set() 何を設定するのかさっぱり分かっていない…

Manual:Line-Aware Parsing and the Offside Rule:Offside Rule and Blocks

まんま >>> from lepl import * >>> introduce = ~Token(':') >>> word = Token(Word(Lower())) >>> statement = Delayed() >>> simple = BLine(word[:]) >>> empty = Line(Empty()) >>> block = BLine(word[:] & introduce) & Block(statement[:]) >>> stat…

prawn:Prawn::Document::Internals#page_xobjects

#!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new p pdf.page_xobjects で、 {}

Manual:Line-Aware Parsing and the Offside Rule:Lines and Continuations

まんま >>> from lepl import * >>> words = Token(Word(Lower()))[:] > list >>> line = Line(words) >>> parser = line.string_parser(LineAwareConfiguration(tabsize=4)) >>> parser('\tabc def') [['abc', 'def']] >>> words = Token(Word(Lower()))[:]…

prawn:Prawn::Document::Internals#page_resources

#!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new p pdf.page_resources で、 {}

Manual:Line-Aware Parsing and the Offside Rule:Indent and Eol Tokens

まんま >>> from lepl import * >>> words = Token(Word(Lower()))[:] > list >>> line = Indent() & words & Eol() >>> parser = line.string_parser(LineAwareConfiguration(tabsize=4)) >>> parser('\tabc def') [' ', ['abc', 'def'], ''] >>> parser('\…

prawn:Prawn::Document::Internals#page_fonts

#!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new p pdf.page_fonts p pdf.font pdf.font "Times-Roman" p pdf.page_fonts p pdf.font pdf.font_families.update( "MyTrueTypeFamily" => { :bold => "foo-bold.ttf", :italic => "foo-italic.…

Manual:Line-Aware Parsing and the Offside Rule:Line Aware Alphabet

LEPL-3.1 だと入っていなかったので、LEPL-3.3.3 にまんま >>> from lepl import * >>> start = SOL() & Space()[:, ...] >>> words = Word()[:,~Space()[:]] > list >>> end = EOL() >>> line = start & words & end >>> parser = line.string_parser(LineA…

prawn:Prawn::Document::Internals#names

#!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new p pdf.names で、 #<Prawn::Reference:0xb7b3b4a8 @data={:Type=>:Names}, @gen=0, @on_encode=nil, @identifier=6, @compressed=false></prawn::reference:0xb7b3b4a8>

Manual:Lexer:Advanced Options

まんま >>> from lepl import * >>> abc = Token('abc') >>> incomplete = abc(Literal('ab')) >>> incomplete.parse('abc') >>> abc = Token('abc') >>> incomplete = abc(Literal('ab'), complete=False) >>> incomplete.parse('abc') ['ab']

prawn:Prawn::Document::Internals#add_content

まんま #!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new x1,y1,x2,y2 = 100,500,300,550 pdf.add_content("%.3f %.3f m" % [ x1, y1 ]) # move pdf.add_content("%.3f %.3f l" % [ x2, y2 ]) # draw path pdf.add_content("S") # stroke pdf…

Manual:Lexer:Limitations

まんま >>> from lepl import * >>> matchers = (Integer() | Literal('-'))[:] & Eos() >>> list(matchers.match('1-2')) [(['1', '-2'], ''), (['1', '-', '2'], '')] >>> tokens = (Token(Integer()) | Token(r'\-'))[:] & Eos() >>> list(tokens.match('…

prawn:Prawn::Document::ColumnBox

#!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new p Prawn::Document::ColumnBox.new(pdf, [0, 0]).left_side p Prawn::Document::ColumnBox.new(pdf, [0, 0]).move_past_bottom p Prawn::Document::ColumnBox.new(pdf, [0, 0]).right_side p…

Manual:Lexer:Use

まんま >>> from lepl import * >>> name = Token('[A-Z][a-z]*') >>> number = Token(Integer()) >>> params = Token('()') >>> function = Token('[a-z]*') >>> sin = function('sine') >>> cos = function('cosine') >>> call = (sin | cos) & params >>>…

prawn:Prawn::Document::ColumnBox.new

#!/usr/bin/env ruby require "prawn" pdf = Prawn::Document.new p Prawn::Document::ColumnBox.new(pdf, [0, 0]) で、 #<Prawn::Document::ColumnBox:0xb7b549d0 @columns=3, @x=0, @spacer=12, @width=nil, @parent=#<Prawn::Document:0xb7b5653c @current_page=#<Prawn::Reference:0xb7b54660 @data={:Parent=>#</prawn::document::columnbox:0xb7b549d0>

Manual:Debugging:Trace Output

まんまではエラーになるようなので、id:noritsugu:20090802:parser のコードに Trace を入れて >>> from lepl import * >>> from lepl.matchers import * >>> from logging import basicConfig, INFO >>> basicConfig(level=INFO) >>> name = Word() > 'name…