Module: Pdf

Defined in:
lib/pdf.rb,
lib/pdf/view.rb,
lib/pdf/layout.rb,
lib/pdf/version.rb,
lib/pdf/renderer.rb,
lib/pdf/resolver.rb,
lib/pdf/blueprint.rb,
lib/pdf/component.rb,
lib/pdf/components/hr.rb,
lib/pdf/components/date.rb,
lib/pdf/components/logo.rb,
lib/pdf/components/span.rb,
lib/pdf/components/alert.rb,
lib/pdf/components/table.rb,
lib/pdf/components/title.rb,
lib/pdf/footer_evaluator.rb,
lib/pdf/header_evaluator.rb,
lib/pdf/components/spacer.rb,
lib/pdf/content_evaluator.rb,
lib/pdf/components/context.rb,
lib/pdf/components/heading.rb,
lib/pdf/components/qr_code.rb,
lib/pdf/dynamic_components.rb,
lib/pdf/components/subtitle.rb,
lib/pdf/components/paragraph.rb,
lib/pdf/builders/footer_builder.rb,
lib/pdf/builders/header_builder.rb,
lib/pdf/builders/content_builder.rb

Defined Under Namespace

Modules: Builders, Components, DynamicComponents Classes: Blueprint, Component, ContentEvaluator, EachItemContext, Error, FileNotFoundError, FooterEvaluator, HeaderEvaluator, Layout, Renderer, ResolutionError, Resolver, View

Constant Summary collapse

VERSION =
"0.1.1"
DEFAULT_MARGINS =

Default margins used by both Renderer and Layout

{ top: 72, right: 36, bottom: 72, left: 36 }.freeze

Class Method Summary collapse

Class Method Details

.component(name) ⇒ Object



58
59
60
# File 'lib/pdf.rb', line 58

def component(name)
  components[name.to_sym] || raise(Error, "Unknown component: #{name}")
end

.component_registered?(name) ⇒ Boolean

Returns:

  • (Boolean)


62
63
64
# File 'lib/pdf.rb', line 62

def component_registered?(name)
  components.key?(name.to_sym)
end

.componentsObject



46
47
48
# File 'lib/pdf.rb', line 46

def components
  @components ||= {}
end

.register_component(name, klass) ⇒ Object



50
51
52
53
54
55
56
# File 'lib/pdf.rb', line 50

def register_component(name, klass)
  unless klass < Component
    raise ArgumentError, "#{klass} must inherit from Pdf::Component"
  end

  components[name.to_sym] = klass
end