Class: Rabbit::Renderer::Offscreen
- Inherits:
-
Object
- Object
- Rabbit::Renderer::Offscreen
show all
- Includes:
- Base, Engine::Cairo
- Defined in:
- lib/rabbit/renderer/offscreen.rb
Constant Summary
Constants included
from DirtyCount
DirtyCount::TOO_DIRTY
Constants included
from GetText
GetText::DOMAIN
Instance Attribute Summary collapse
#background, #foreground
Attributes included from Base
#adjustment_x, #adjustment_y, #base_height, #base_width, #draw_scaled_image, #gl_quaternion, #gl_scale, #graffiti_color, #graffiti_line_width, #margin_bottom, #margin_left, #margin_right, #margin_top, #page_margin_bottom, #page_margin_left, #page_margin_right, #page_margin_top, #paper_height, #paper_width, #progress_background, #progress_foreground, #slides_per_page, #x_dpi, #y_dpi
Instance Method Summary
collapse
#alpha_available?, #background_image=, #draw_arc, #draw_arc_by_radius, #draw_background, #draw_layout, #draw_line, #draw_lines, #draw_link, #draw_pixbuf, #draw_polygon, #draw_poppler_page, #draw_rectangle, #draw_rounded_rectangle, #draw_rsvg_handle, #finish_context, #finish_renderer, #init_context, #init_renderer, #reflect_context, #restore_context, #rotate_context, #save_context, #scale_context, #set_font_resolution, #set_source_pixbuf, #shear_context, #to_gdk_rgb, #translate_context
Methods included from Kernel
#draw_background, #draw_circle, #draw_circle_by_radius, #draw_cone, #draw_cube, #draw_dodecahedron, #draw_flag, #draw_flag_layout, #draw_icosahedron, #draw_octahedron, #draw_rectangle_flag, #draw_slide, #draw_sphere, #draw_teapot, #draw_tetrahedron, #draw_torus, #draw_triangle_flag, #flag_size, #gl_call_list, #gl_compile, #gl_supported?, #make_color, #new_list_id, #reflect_context, #restore_context, #rotate_context, #save_context, #scale_context, #shear_context, #translate_context, #z_far, #z_view
Methods included from Base
#add_gesture_action, #blackouting?, #can_undo_graffiti?, #change_graffiti_color, #clean, #clean_if_dirty, #clear_slide, #clear_theme, #confirm, #connect_key, #disconnect_key, #display?, #each_slide_pixbuf, #expand_hole, #font_families, #gl_available?, #graffiti_mode?, #have_graffiti?, #hiding?, #narrow_hole, #offscreen_canvas, #post_init_gui, #post_terminal, #pre_terminal, #print, #printable?, #redraw, #reset_adjustment, #search_slide, #searching?, #setup_event, #stop_slide_search, #toggle_blackout, #toggle_info_window, #toggle_spotlight, #toggle_whiteout, #whiteouting?
Methods included from DirtyCount
#bit_dirty, #dirty, #dirty?, #dirty_count_clean, #very_dirty
Methods included from GetText
included
Constructor Details
#initialize(canvas) ⇒ Offscreen
Returns a new instance of Offscreen.
31
32
33
34
35
|
# File 'lib/rabbit/renderer/offscreen.rb', line 31
def initialize(canvas)
super(canvas)
@filename = nil
@pango_context = nil
end
|
Instance Attribute Details
#filename ⇒ Object
Returns the value of attribute filename.
28
29
30
|
# File 'lib/rabbit/renderer/offscreen.rb', line 28
def filename
@filename
end
|
#pango_context ⇒ Object
Returns the value of attribute pango_context.
29
30
31
|
# File 'lib/rabbit/renderer/offscreen.rb', line 29
def pango_context
@pango_context
end
|
Instance Method Details
#create_pango_context ⇒ Object
95
96
97
98
99
|
# File 'lib/rabbit/renderer/offscreen.rb', line 95
def create_pango_context
context = Gtk::Invisible.new.create_pango_context
set_font_resolution(context)
context
end
|
#height ⇒ Object
41
42
43
|
# File 'lib/rabbit/renderer/offscreen.rb', line 41
def height
@base_height
end
|
#index_mode_off ⇒ Object
63
64
|
# File 'lib/rabbit/renderer/offscreen.rb', line 63
def index_mode_off
end
|
#index_mode_on ⇒ Object
60
61
|
# File 'lib/rabbit/renderer/offscreen.rb', line 60
def index_mode_on
end
|
#make_layout(text) ⇒ Object
72
73
74
75
76
77
78
|
# File 'lib/rabbit/renderer/offscreen.rb', line 72
def make_layout(text)
attrs, text = Pango.parse_markup(text)
layout = Pango::Layout.new(create_pango_context)
layout.text = text
layout.set_attributes(attrs)
layout
end
|
#post_apply_theme ⇒ Object
45
46
|
# File 'lib/rabbit/renderer/offscreen.rb', line 45
def post_apply_theme
end
|
#post_move(old_index, index) ⇒ Object
48
49
|
# File 'lib/rabbit/renderer/offscreen.rb', line 48
def post_move(old_index, index)
end
|
#post_move_in_slide(old_index, index) ⇒ Object
51
52
|
# File 'lib/rabbit/renderer/offscreen.rb', line 51
def post_move_in_slide(old_index, index)
end
|
#post_parse ⇒ Object
57
58
|
# File 'lib/rabbit/renderer/offscreen.rb', line 57
def post_parse
end
|
#post_to_pixbuf(canceled) ⇒ Object
109
110
|
# File 'lib/rabbit/renderer/offscreen.rb', line 109
def post_to_pixbuf(canceled)
end
|
#post_toggle_index_mode ⇒ Object
69
70
|
# File 'lib/rabbit/renderer/offscreen.rb', line 69
def post_toggle_index_mode
end
|
#pre_parse ⇒ Object
54
55
|
# File 'lib/rabbit/renderer/offscreen.rb', line 54
def pre_parse
end
|
#pre_to_pixbuf(slide_size) ⇒ Object
101
102
|
# File 'lib/rabbit/renderer/offscreen.rb', line 101
def pre_to_pixbuf(slide_size)
end
|
#pre_toggle_index_mode ⇒ Object
66
67
|
# File 'lib/rabbit/renderer/offscreen.rb', line 66
def pre_toggle_index_mode
end
|
#to_pixbuf(slide) ⇒ Object
80
81
82
83
84
85
86
87
88
89
90
91
92
93
|
# File 'lib/rabbit/renderer/offscreen.rb', line 80
def to_pixbuf(slide)
pixbuf = nil
::Cairo::ImageSurface.new(@base_width, @base_height) do |surface|
context = ::Cairo::Context.new(surface)
init_context(context)
slide.draw(@canvas)
png = StringIO.new
surface.write_to_png(png)
loader = ImageDataLoader.new(png.string)
pixbuf = loader.load
finish_context
end
pixbuf
end
|
#to_pixbufing(i) ⇒ Object
#width ⇒ Object
37
38
39
|
# File 'lib/rabbit/renderer/offscreen.rb', line 37
def width
@base_width
end
|