Cairo
view release on metacpan or search on metacpan
FT_Face real_face = NULL;
cairo_status_t status;
CODE:
if (sv_isobject (face) && sv_derived_from (face, "Font::FreeType::Face")) {
real_face = (FT_Face) SvIV ((SV *) SvRV (face));
} else {
croak("'%s' is not of type Font::FreeType::Face",
SvPV_nolen (face));
}
RETVAL = cairo_ft_font_face_create_for_ft_face (real_face, load_flags);
/* Keep the face SV (and thus the FT_Face) alive long enough */
SvREFCNT_inc (face);
status = cairo_font_face_set_user_data (RETVAL, &face_key, face,
face_destroy);
if (status) {
warn ("Couldn't install a user data handler, "
"so an FT_Face will be leaked");
}
OUTPUT:
RETVAL
available to all pattern types, not just surface patterns.
* Fix a memory manage bug in Cairo::FtFontFace.
* Fix a bug in the enum conversion code that made it more lenient than
intended.
* Add a few examples.
* Fix a few test failures.
Overview of changes in Cairo 1.062
==================================
* Cairo::FtFontFace: Keep the FT_Face alive long enough to avoid
segfaults
* Add two new example programs
* Fix test failures
Overview of changes in Cairo 1.061
==================================
* Support the enum value CAIRO_FONT_TYPE_QUARTZ.
* Improve the documentation slightly.
* Fix a few test failures.
t/CairoSurface.t view on Meta::CPAN
}
SKIP: {
skip 'new stuff', 1
unless Cairo::VERSION >= Cairo::VERSION_ENCODE (1, 16, 0);
$surf->set_metadata("title","Testing metadata");
$surf->set_metadata("author","Johan Vromans");
$surf->set_metadata("subject","cairo_pdf_set_metadata");
ok(1); # No get_metadata, so assume OK if we're still alive
}
SKIP: {
skip 'new stuff', 3
unless Cairo::VERSION >= Cairo::VERSION_ENCODE (1, 16, 0);
$surf->set_page_label('Page label');
is ($surf->status(), 'success');
$surf->set_thumbnail_size(20, 20);
( run in 0.467 second using v1.01-cache-2.11-cpan-df04353d9ac )