use Renard::Incunabula::Common::Setup;
package Renard::Incunabula::Page::CairoImageSurface;
# ABSTRACT: Page directly generated from a Cairo image surface
$Renard::Incunabula::Page::CairoImageSurface::VERSION = '0.005';
use Moo;
use Renard::Incunabula::Common::Types qw(InstanceOf);
has cairo_image_surface => (
is => 'ro',
isa => InstanceOf['Cairo::ImageSurface'],
required => 1
);
with qw(
Renard::Incunabula::Page::Role::CairoRenderable
Renard::Incunabula::Page::Role::BoundsFromCairoImageSurface
);
1;
__END__
=pod
=encoding UTF-8
=head1 NAME
Renard::Incunabula::Page::CairoImageSurface - Page directly generated from a Cairo image surface
=head1 VERSION
version 0.005
=head1 EXTENDS
=over 4
=item * L<Moo::Object>
=back
=head1 CONSUMES
=over 4
=item * L<Renard::Incunabula::Page::Role::Bounds>
=item * L<Renard::Incunabula::Page::Role::BoundsFromCairoImageSurface>
=item * L<Renard::Incunabula::Page::Role::CairoRenderable>
=back
=head1 ATTRIBUTES
=head2 cairo_image_surface
The L<Cairo::ImageSurface> that this page is drawn on.
=head1 AUTHOR
Project Renard
=head1 COPYRIGHT AND LICENSE
This software is copyright (c) 2017 by Project Renard.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
=cut