The Perl and Raku Conference 2025: Greenville, South Carolina - June 27-29 Learn more

use base qw(PDF::Builder::Content PDF::Builder::Content::Text PDF::Builder::Resource::XObject::Form);
use strict;
our $VERSION = '3.026'; # VERSION
our $LAST_UPDATE = '3.026'; # manually update whenever code is changed
=head1 NAME
PDF::Builder::Resource::XObject::Form::Hybrid - support routines for Forms. Inherits from L<PDF::Builder::Content>, L<PDF::Builder::Content::Text>, and L<PDF::Builder::Resource::XObject::Form>
=head1 METHODS
=head2 new
PDF::Builder::Resource::XObject::Form->new(args)
=over
Create a new object for a form.
=back
=cut
sub new {
my $self = PDF::Builder::Resource::XObject::Form::new(@_);
$self->{' stream'} = '';
$self->{' poststream'} = '';
$self->{' font'} = undef;
$self->{' fontsize'} = 0;
$self->{' charspace'} = 0;
$self->{' hscale'} = 100;
$self->{' wordspace'} = 0;
$self->{' leading'} = 0;
$self->{' rise'} = 0;
$self->{' render'} = 0;
$self->{' matrix'} = [1, 0, 0, 1, 0, 0];
$self->{' fillcolor'} = [0];
$self->{' strokecolor'} = [0];
$self->{' translate'} = [0, 0];
$self->{' scale'} = [1, 1];
$self->{' skew'} = [0, 0];
$self->{' rotate'} = 0;
$self->{' apiistext'} = 0;
$self->{'Resources'} = PDFDict();
$self->{'Resources'}->{'ProcSet'} = PDFArray(map { PDFName($_) } qw(PDF Text ImageB ImageC ImageI));
$self->compressFlate();
return $self;
}
sub outobjdeep {
my ($self) = shift();
$self->textend() unless $self->{' nofilt'};
# # Maintainer's Note: This list of keys isn't the same as the list
# # in new(). Should it be?
# # missing: stream, poststream, apiistext
# # added: api, apipdf, apipage
# foreach my $key (qw(api apipdf apipage font fontsize charspace hscale
# wordspace leading rise render matrix fillcolor
# strokecolor translate scale skew rotate)) {
# delete $self->{" $key"};
# }
return PDF::Builder::Basic::PDF::Dict::outobjdeep($self, @_);
}
1;