end
end
pdf.fill_color Color::RGB::Black
# Правый верхний: Grampian Highlands (UR).
quadrant(pdf, :ur) do
pdf.image('grampian-highlands.jpg',
:height => pdf.margin_height,
:resize => :width)
pdf.text('The Grampian Highlands, Scotland',
justification => :center,
:font_size => 36)
pdf.text(' 01August 2001 01', :justification => :center,
:font_size => 24)
pdf.move_pointer(24)
info = <<-'EOS'.split($/).join(' ').squeeze(' ')
This picture was taken during a driving vacation through the
Scottish highlands in August 2001 by Austin Ziegler.
EOS
pdf.text(info, :justification => :full, :font_size => 16,
:left => 100, :right => 100)
end
pdf.fill_color Color::RGB::Black
# Левый нижний: Individual-I (LL).
quadrant(pdf, :ll) do
require 'color/palette/monocontrast'
class IndividualI
def initialize(size = 100)
@size = size
end
# Размер буквы 'i' в пунктах.
attr_accessor :size
def half_i(pdf)
pdf.move_to(0, 82)
pdf.line_to(0, 78)
pdf.line_to(9, 78)
pdf.line_to(9, 28)
pdf.line_to(0, 28)
pdf.line_to(0, 23)
pdf.line_to(18, 23)
pdf.line_to(18, 82)
pdf.fill
end
private :half_i
def draw(pdf, x, y)
pdf.save_state
pdf.translate_axis(x, y)
pdf.scale_axis(1 * (@size / 100.0), -1 * (@size / 100.0))
pdf.circle_at(20, 10, 7.5)
pdf.fill
half_i(pdf)
pdf.translate_axis(40, 0)
pdf.scale_axis(-1, 1)
half_i(pdf)
pdf.restore_state
end
end
ii = IndividualI.new(24)
x = pdf.absolute_left_margin
y = pdf.absolute_top_margin
bg = Color::RGB.from_fraction(rand, rand, rand)
fg = Color::RGB.from_fraction(rand, rand, rand)
pal = Color::Palette::MonoContrast.new(bg, fg)
sz = 24
(-5..5).each do |col|
pdf.fill_color pal.background[col]
ii.draw(pdf, x, y)
ii.size += sz
x += sz / 2.0
y -= sz / 2.0
pdf.fill_color
pal.foreground[col]
ii.draw(pdf, x, y)
x += sz / 2.0
y -= sz / 2.0
ii.size += sz
end
end
pdf.fill_color Color::RGB::Black
# Правый нижний: Gettysburg Address (LR).