class BrDanfe::CceLib::Document
Public Class Methods
Source
# File lib/br_danfe/cce_lib/document.rb, line 4 def initialize @document = BrDanfe::DocumentBuilder.build( page_size: 'A4', page_layout: :portrait, left_margin: 30, right_margin: 30, top_margin: 30, botton_margin: 30 ) @document.font 'tinos' @document.line_width = 0.3 end
Public Instance Methods
Source
# File lib/br_danfe/cce_lib/document.rb, line 30 def box(height:, pad: 5) bounding_box([0, cursor], width: page_width, height: height) do pad(pad) { indent(pad) { yield if block_given? } } stroke_bounds end end
Source
# File lib/br_danfe/cce_lib/document.rb, line 18 def method_missing(method_name, ...) if @document.respond_to? method_name @document.send(method_name, ...) else super end end
Calls superclass method
Source
# File lib/br_danfe/cce_lib/document.rb, line 26 def respond_to_missing?(method_name, include_private = false) @document.respond_to?(method_name, include_private) || super end
Calls superclass method
Source
# File lib/br_danfe/cce_lib/document.rb, line 37 def text(text, options = {}) pad = options.delete(:pad) || 0 options = { align: :left, size: 12, style: nil }.merge(options) pad(pad) do @document.text text, size: options[:size], style: options[:style], align: options[:align] end end
Private Instance Methods
Source
# File lib/br_danfe/cce_lib/document.rb, line 49 def page_width page.dimensions[2] - (page.margins[:left] + page.margins[:right]) end