#!/usr/bin/perl
require
"./pango00.pl"
;
my
$surface
= Cairo::PdfSurface->create(
'pango01.pdf'
, 595, 842 );
my
$cr
= Cairo::Context->create(
$surface
);
my
$layout
= Pango::Cairo::create_layout(
$cr
);
my
$PANGO_SCALE
= Pango->scale;
my
$PANGO_FONT_SCALE
= 0.75 *
$PANGO_SCALE
;
my
$realfontsize
= 60;
my
$fontsize
=
$realfontsize
*
$PANGO_FONT_SCALE
;
my
$tinysize
= 20 *
$PANGO_FONT_SCALE
;
my
$font
= Pango::FontDescription->from_string(
'freeserif 12'
);
$font
->set_size(
$fontsize
);
$layout
->set_font_description(
$font
);
my
$x
= 0;
my
$y
= 842-500;
my
$txt
=
qq{ Áhe <i><span foreground="red">quick</span> }
.
qq{<span size="$tinysize"><b>brown</b></span></i> }
.
qq{<span rise="10240">fox</span>}
.
qq{<span rise="10pt" }
.
qq{size="46080">x</span>}
.
qq{<span rise="10pt" size="45pt">x</span> }
;
my
$txt_nomarkup
=
"Áhe quick brown fox "
;
$layout
->set_markup(
$txt
);
$layout
->set_width( 595 *
$PANGO_SCALE
);
$layout
->set_alignment(
"left"
);
showlayout(
$cr
,
$layout
,
$x
,
$y
);
$y
+= 100;
$layout
->set_width( 595 *
$PANGO_SCALE
);
$layout
->set_alignment(
"right"
);
showlayout(
$cr
,
$layout
,
$x
,
$y
);
$y
+= 100;
$cr
->select_font_face(
"freeserif"
,
"normal"
,
"normal"
);
$cr
->set_font_size(
$realfontsize
);
$cr
->move_to(
$x
,
$y
+50 );
$cr
->show_text(
$txt_nomarkup
);
$y
+= 100;
$layout
->set_width( 595 *
$PANGO_SCALE
);
$layout
->set_alignment(
"center"
);
showlayout(
$cr
,
$layout
,
$x
,
$y
);
$cr
->show_page;