http://www.perlmonks.org?node_id=1001520


in reply to PDF::API3 and the Courier font

I believe that you're experiencing a capitalization problem. I would write the font names like this:
#!/usr/bin/perl use strict; use warnings; use PDF::API3::Compat::API2; use PDF::API3::Compat::API2::Util; my $outputPDF = 'test.pdf'; { my $pdf = PDF::API3::Compat::API2->new( -file => $outputPDF ); defined $pdf or die "Unable to create PDF file $outputPDF"; my $page = $pdf->page(); my $content = $page->text(); my ( $x, $y ) = ( 72, 720 ); foreach my $fontName ( qw[ trebuchet trebuchetbold trebuchetitalic trebuchetbolditalic bankgothic Courier Courier-Bold Courier-BoldOblique Courier-Oblique Courier-New Courier-NewBold georgia georgiabold georgiabolditalic georgiaitalic Helvetica-BoldOblique Helvetica-Oblique Helvetica-Bold Helveti +ca Symbol Times-BoldItalic Times-Italic Times-Roman Times-Bold verdana verdanabold verdanabolditalic verdanaitalic webdings wingdings zapfdingbats ] ) { my $font = $pdf->corefont($fontName); $content->font( $font, 10 ); $content->translate( $x, $y ); $content->text( 'This is the first line I have written using this module' ); $y -= 12; $content->translate( $x, $y ); $content->text("in quite a while. ($fontName)"); $y -= 12; } $pdf->save; }

Replies are listed 'Best First'.
Re^2: PDF::API3 and the Courier font
by talexb (Chancellor) on Oct 30, 2012 at 15:36 UTC
      I believe that you're experiencing a capitalization problem.

    Thanks for the suggestion -- that's one of the things I tried already. I tried it again, and no dice.

    I also tried putting a dash after 'Courier' -- all of these changes provide me with nothing but Courier Oblique.

    #!/usr/bin/perl # # Test PDF::API3 for use with open source license files. use strict; use warnings; my $outputPDF = 'test.pdf'; use PDF::API3::Compat::API2; { my $pdf = PDF::API3::Compat::API2->new( -file => $outputPDF ); defined $pdf or die "Unable to create PDF file $outputPDF"; my $page = $pdf->page(); my $content = $page->text(); my ( $x, $y ) = ( 72, 720 ); for my $fontName ( qw[ courier courierbold courierboldoblique courieroblique Courier CourierBold CourierBoldOblique CourierOblique courier courier-bold courier-boldoblique courier-oblique Courier Courier-Bold Courier-BoldOblique Courier-Oblique ] ) { my $font = $pdf->corefont($fontName); $content->font( $font, 10 ); $content->translate( $x, $y ); $content->text( 'This is the first line I have written using this module' ); $y -= 12; $content->translate( $x, $y ); $content->text("in quite a while. ($fontName)"); $y -= 12; } $pdf->save; }

    Alex / talexb / Toronto

    "Groklaw is the open-source mentality applied to legal research" ~ Linus Torvalds