class Rabbit::Renderer::PrintLayoutMore

Public Class Methods

new(renderer, canvas) click to toggle source
Calls superclass method Rabbit::Renderer::PrintLayout::new
# File lib/rabbit/renderer/print-layout.rb, line 99
def initialize(renderer, canvas)
  super
  @margin_left ||= 10
  @margin_right ||= 10
  @margin_top ||= 10
  @margin_bottom ||= 10
end

Public Instance Methods

normalize_x(x) click to toggle source
# File lib/rabbit/renderer/print-layout.rb, line 116
def normalize_x(x)
  base = @margin_left
  unless left?
    base += @margin_left + @margin_right + slide_width
  end
  x + base
end
normalize_y(y) click to toggle source
# File lib/rabbit/renderer/print-layout.rb, line 124
def normalize_y(y)
  nth_col = (normalized_current_index / 2.0).truncate
  base = @margin_top * (nth_col + 1)
  base += @margin_bottom * nth_col
  base += slide_height * nth_col
  y + base
end
slide_height() click to toggle source
# File lib/rabbit/renderer/print-layout.rb, line 111
def slide_height
  base = @renderer.page_height / (@renderer.slides_per_page / 2.0).ceil
  base - @margin_top - @margin_bottom
end
slide_width() click to toggle source
# File lib/rabbit/renderer/print-layout.rb, line 107
def slide_width
  (@renderer.page_width / 2) - @margin_left - @margin_right
end

Private Instance Methods

left?() click to toggle source
# File lib/rabbit/renderer/print-layout.rb, line 133
def left?
  (normalized_current_index % 2).zero?
end
normalized_current_index() click to toggle source
# File lib/rabbit/renderer/print-layout.rb, line 137
def normalized_current_index
  @canvas.current_index % @renderer.slides_per_page
end