class PdfTempura::Render::CharacterField

Private Instance Methods

field_options() click to toggle source
# File lib/pdf_tempura/render/character_field.rb, line 32
def field_options
  {
    valign: @field.valign.to_sym,
    align: @field.alignment.to_sym,
    single_line: !@field.multi_line?,
    overflow: :shrink_to_fit,
    size: @field.font_size,
    leading: @field.leading
  }
end
font_style() click to toggle source
# File lib/pdf_tempura/render/character_field.rb, line 12
def font_style
  if @field.bold? && @field.italic?
    :bold_italic
  elsif @field.bold?
    :bold
  elsif @field.italic?
    :italic
  else
    :normal
  end
end
render_debug_annotation(pdf) click to toggle source
# File lib/pdf_tempura/render/character_field.rb, line 43
def render_debug_annotation(pdf)
  Debug::CharacterFieldAnnotation.new(@field).render(pdf)
end
render_field(pdf) click to toggle source
# File lib/pdf_tempura/render/character_field.rb, line 24
def render_field(pdf)
  field_bounds_box(pdf) do
    padding_bounds_box(pdf) do
      pdf.text_box(@value.to_s, field_options)
    end
  end
end
set_styling(pdf) click to toggle source
# File lib/pdf_tempura/render/character_field.rb, line 7
def set_styling(pdf)
  pdf.fill_color = "000000"
  pdf.font @field.font_name, style: font_style
end