Class: PdfStyle
- Inherits:
-
Object
- Object
- PdfStyle
- Defined in:
- lib/majorsilence_pdf/pdf_native.rb
Overview
A text style handle. Defaults: Helvetica 12 pt black left-aligned. Call close when done.
Instance Attribute Summary collapse
-
#handle ⇒ Object
readonly
Returns the value of attribute handle.
Instance Method Summary collapse
- #close ⇒ Object
-
#initialize(fns) ⇒ PdfStyle
constructor
A new instance of PdfStyle.
-
#set_alignment(alignment) ⇒ Object
alignment: 0 = left, 1 = center, 2 = right.
- #set_bold(bold = true) ⇒ Object
- #set_color(r, g, b) ⇒ Object
-
#set_decoration(decoration) ⇒ Object
decoration: 0 = none, 1 = underline, 2 = strikethrough, 3 = overline.
- #set_font_family(family) ⇒ Object
- #set_font_file(path) ⇒ Object
- #set_italic(ital = true) ⇒ Object
- #set_size(points) ⇒ Object
Constructor Details
#initialize(fns) ⇒ PdfStyle
Returns a new instance of PdfStyle.
323 324 325 326 327 328 329 |
# File 'lib/majorsilence_pdf/pdf_native.rb', line 323 def initialize(fns) @fns = fns h = fns[:pdf_style_create].call raise "pdf_style_create failed: #{PdfLibrary.last_error_str(fns)}" if h.nil? || h.zero? @handle = h end |
Instance Attribute Details
#handle ⇒ Object (readonly)
Returns the value of attribute handle.
321 322 323 |
# File 'lib/majorsilence_pdf/pdf_native.rb', line 321 def handle @handle end |
Instance Method Details
#close ⇒ Object
344 345 346 347 348 349 |
# File 'lib/majorsilence_pdf/pdf_native.rb', line 344 def close return unless @handle @fns[:pdf_style_close].call(@handle) @handle = nil end |
#set_alignment(alignment) ⇒ Object
alignment: 0 = left, 1 = center, 2 = right. Use ALIGN_* constants.
339 |
# File 'lib/majorsilence_pdf/pdf_native.rb', line 339 def set_alignment(alignment) = tap { @fns[:pdf_style_set_alignment].call(@handle, alignment) } |
#set_bold(bold = true) ⇒ Object
335 |
# File 'lib/majorsilence_pdf/pdf_native.rb', line 335 def set_bold(bold = true) = tap { @fns[:pdf_style_set_bold].call(@handle, bold ? 1 : 0) } |
#set_color(r, g, b) ⇒ Object
334 |
# File 'lib/majorsilence_pdf/pdf_native.rb', line 334 def set_color(r, g, b) = tap { @fns[:pdf_style_set_color].call(@handle, r, g, b) } |
#set_decoration(decoration) ⇒ Object
decoration: 0 = none, 1 = underline, 2 = strikethrough, 3 = overline. Use DECOR_* constants.
342 |
# File 'lib/majorsilence_pdf/pdf_native.rb', line 342 def set_decoration(decoration) = tap { @fns[:pdf_style_set_decoration].call(@handle, decoration) } |
#set_font_family(family) ⇒ Object
331 |
# File 'lib/majorsilence_pdf/pdf_native.rb', line 331 def set_font_family(family) = tap { @fns[:pdf_style_set_font_family].call(@handle, c_str(family)) } |
#set_font_file(path) ⇒ Object
332 |
# File 'lib/majorsilence_pdf/pdf_native.rb', line 332 def set_font_file(path) = tap { @fns[:pdf_style_set_font_file].call(@handle, c_str(path)) } |
#set_italic(ital = true) ⇒ Object
336 |
# File 'lib/majorsilence_pdf/pdf_native.rb', line 336 def set_italic(ital = true) = tap { @fns[:pdf_style_set_italic].call(@handle, ital ? 1 : 0) } |
#set_size(points) ⇒ Object
333 |
# File 'lib/majorsilence_pdf/pdf_native.rb', line 333 def set_size(points) = tap { @fns[:pdf_style_set_size].call(@handle, points.to_f) } |