r12899 - in /trunk/libpdf-api2-perl: META.yml debian/changelog lib/PDF/API2.pm lib/PDF/API2/Resource/CIDFont/TrueType/FontFile.pm lib/PDF/API2/Resource/Font/neTrueType.pm lib/PDF/API2/Version.pm

dmn at users.alioth.debian.org dmn at users.alioth.debian.org
Fri Jan 18 05:54:18 UTC 2008


Author: dmn
Date: Fri Jan 18 05:54:17 2008
New Revision: 12899

URL: http://svn.debian.org/wsvn/?sc=1&rev=12899
Log:
* (NOT RELEASED YET) New upstream release

Modified:
    trunk/libpdf-api2-perl/META.yml
    trunk/libpdf-api2-perl/debian/changelog
    trunk/libpdf-api2-perl/lib/PDF/API2.pm
    trunk/libpdf-api2-perl/lib/PDF/API2/Resource/CIDFont/TrueType/FontFile.pm
    trunk/libpdf-api2-perl/lib/PDF/API2/Resource/Font/neTrueType.pm
    trunk/libpdf-api2-perl/lib/PDF/API2/Version.pm

Modified: trunk/libpdf-api2-perl/META.yml
URL: http://svn.debian.org/wsvn/trunk/libpdf-api2-perl/META.yml?rev=12899&op=diff
==============================================================================
--- trunk/libpdf-api2-perl/META.yml (original)
+++ trunk/libpdf-api2-perl/META.yml Fri Jan 18 05:54:17 2008
@@ -1,11 +1,14 @@
-# http://module-build.sourceforge.net/META-spec.html
-#XXXXXXX This is a prototype!!!  It will change in the future!!! XXXXX#
-name:         PDF-API2
-version:      0.68
-version_from: lib/PDF/API2/Version.pm
-installdirs:  site
-requires:
+--- #YAML:1.0
+name:                PDF-API2
+version:             0.69
+abstract:            TheNextGen PDF Create/Modify API
+license:             ~
+author:              
+    - areibens at cpan.org
+generated_by:        ExtUtils::MakeMaker version 6.42
+distribution_type:   module
+requires:     
     Compress::Zlib:                1
-
-distribution_type: module
-generated_by: ExtUtils::MakeMaker version 6.30
+meta-spec:
+    url:     http://module-build.sourceforge.net/META-spec-v1.3.html
+    version: 1.3

Modified: trunk/libpdf-api2-perl/debian/changelog
URL: http://svn.debian.org/wsvn/trunk/libpdf-api2-perl/debian/changelog?rev=12899&op=diff
==============================================================================
--- trunk/libpdf-api2-perl/debian/changelog (original)
+++ trunk/libpdf-api2-perl/debian/changelog Fri Jan 18 05:54:17 2008
@@ -1,3 +1,9 @@
+libpdf-api2-perl (0.69-1) UNRELEASED; urgency=low
+
+  * (NOT RELEASED YET) New upstream release
+
+ -- Damyan Ivanov <dmn at debian.org>  Fri, 18 Jan 2008 07:51:47 +0200
+
 libpdf-api2-perl (0.68-2) UNRELEASED; urgency=low
 
   [ gregor herrmann ]

Modified: trunk/libpdf-api2-perl/lib/PDF/API2.pm
URL: http://svn.debian.org/wsvn/trunk/libpdf-api2-perl/lib/PDF/API2.pm?rev=12899&op=diff
==============================================================================
--- trunk/libpdf-api2-perl/lib/PDF/API2.pm (original)
+++ trunk/libpdf-api2-perl/lib/PDF/API2.pm Fri Jan 18 05:54:17 2008
@@ -27,7 +27,7 @@
 #   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 #   Boston, MA 02111-1307, USA.
 #
-#   $Id: API2.pm,v 2.14 2007/11/16 19:30:31 areibens Exp $
+#   $Id: API2.pm,v 2.15 2008/01/18 00:11:38 areibens Exp $
 #
 #=======================================================================
 
@@ -37,7 +37,7 @@
 
     use vars qw( $VERSION $seq @FontDirs );
 
-    ($VERSION) = sprintf '%i.%03i', split(/\./,('$Revision: 2.14 $' =~ /Revision: (\S+)\s/)[0]);  # $Date: 2007/11/16 19:30:31 $
+    ($VERSION) = sprintf '%i.%03i', split(/\./,('$Revision: 2.15 $' =~ /Revision: (\S+)\s/)[0]);  # $Date: 2008/01/18 00:11:38 $
 
     @FontDirs = ( (map { "$_/PDF/API2/fonts" } @INC), 
         qw[ /usr/share/fonts /usr/local/share/fonts c:/windows/fonts c:/winnt/fonts ] );
@@ -615,15 +615,9 @@
       foreach my $k (@{$self->{infoMeta}}) {
         next unless(defined $self->{pdf}->{'Info'}->{$k});
         $opt{$k}=$self->{pdf}->{'Info'}->{$k}->val;
-        if(unpack('n',$opt{$k})==0xfffe) 
+        if ((unpack('n',$opt{$k})==0xfffe) or (unpack('n',$opt{$k})==0xfeff)) 
         {
-            my ($mark, at c)=unpack('v*',$opt{$k});
-            $opt{$k}=pack('U*', at c);
-        } 
-        elsif(unpack('n',$opt{$k})==0xfeff) 
-        {
-            my ($mark, at c)=unpack('n*',$opt{$k});
-            $opt{$k}=pack('U*', at c);
+            $opt{$k} = decode('UTF-16', $self->{pdf}->{'Info'}->{$k}->val);
         }
       }
   }
@@ -705,6 +699,7 @@
         delete $md->{Filter};
         delete $md->{' nofilt'};
         $self->{pdf}->out_obj($md);
+        $self->{pdf}->out_obj($self->{catalog});
     }
     return($md->{' stream'});
 }
@@ -2556,6 +2551,9 @@
 =head1 HISTORY
 
     $Log: API2.pm,v $
+    Revision 2.15  2008/01/18 00:11:38  areibens
+    fixed catalog update and infohash utf16 from http://bugs.debian.org/461167
+
     Revision 2.14  2007/11/16 19:30:31  areibens
     added -noembed option
 

Modified: trunk/libpdf-api2-perl/lib/PDF/API2/Resource/CIDFont/TrueType/FontFile.pm
URL: http://svn.debian.org/wsvn/trunk/libpdf-api2-perl/lib/PDF/API2/Resource/CIDFont/TrueType/FontFile.pm?rev=12899&op=diff
==============================================================================
--- trunk/libpdf-api2-perl/lib/PDF/API2/Resource/CIDFont/TrueType/FontFile.pm (original)
+++ trunk/libpdf-api2-perl/lib/PDF/API2/Resource/CIDFont/TrueType/FontFile.pm Fri Jan 18 05:54:17 2008
@@ -27,7 +27,7 @@
 #   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
 #   Boston, MA 02111-1307, USA.
 #
-#   $Id: FontFile.pm,v 2.5 2007/11/16 19:27:32 areibens Exp $
+#   $Id: FontFile.pm,v 2.6 2008/01/04 08:08:39 areibens Exp $
 #
 #=======================================================================
 package PDF::API2::Resource::CIDFont::TrueType::FontFile;
@@ -48,7 +48,7 @@
 
     @ISA = qw( PDF::API2::Basic::PDF::Dict );
 
-    ( $VERSION ) = sprintf '%i.%03i', split(/\./,('$Revision: 2.5 $' =~ /Revision: (\S+)\s/)[0]); # $Date: 2007/11/16 19:27:32 $
+    ( $VERSION ) = sprintf '%i.%03i', split(/\./,('$Revision: 2.6 $' =~ /Revision: (\S+)\s/)[0]); # $Date: 2008/01/04 08:08:39 $
     $cmap={};
 }
 no warnings qw[ recursion uninitialized ];
@@ -505,14 +505,7 @@
     }
     
     $data->{apiname}=$data->{fontname};
-if(0)
-{
 	$data->{apiname}=~s/[^A-Za-z0-9]+/ /og;
-}
-else
-{
-	$data->{apiname}=~s/\s+//og;
-}
     $data->{apiname}=join('',map { $_=~s/[^A-Za-z0-9]+//og; $_=ucfirst(lc(substr($_,0,2))); $_; } split(/\s+/,$data->{apiname}));
     $data->{fontname}=~s/[\x00-\x1f\s]//og;
 
@@ -644,22 +637,12 @@
     $data->{kern}=read_kern_table($font,$data->{upem},$self);
     delete $data->{kern} unless(defined $data->{kern});
 
-if(0)
-{
-    $data->{fontname}=~s/[^a-zA-Z0-9]//og;
-    $data->{fontfamily}=~s/[^a-zA-Z0-9]//og;
-    $data->{apiname}=~s/[^a-zA-Z0-9]//og;
-    $data->{altname}=~s/[^a-zA-Z0-9]//og;
-    $data->{subname}=~s/[^a-zA-Z0-9]//og;
-}
-else
-{
     $data->{fontname}=~s/\s+//og;
     $data->{fontfamily}=~s/\s+//og;
     $data->{apiname}=~s/\s+//og;
     $data->{altname}=~s/\s+//og;
     $data->{subname}=~s/\s+//og;
-}    
+
     $self->subsetByCId(0);
     
     return($self,$data);
@@ -747,6 +730,9 @@
 =head1 HISTORY
 
     $Log: FontFile.pm,v $
+    Revision 2.6  2008/01/04 08:08:39  areibens
+    apiname fix
+
     Revision 2.5  2007/11/16 19:27:32  areibens
     fixed -noembed option
 

Modified: trunk/libpdf-api2-perl/lib/PDF/API2/Resource/Font/neTrueType.pm
URL: http://svn.debian.org/wsvn/trunk/libpdf-api2-perl/lib/PDF/API2/Resource/Font/neTrueType.pm?rev=12899&op=diff
==============================================================================
--- trunk/libpdf-api2-perl/lib/PDF/API2/Resource/Font/neTrueType.pm (original)
+++ trunk/libpdf-api2-perl/lib/PDF/API2/Resource/Font/neTrueType.pm Fri Jan 18 05:54:17 2008
@@ -38,7 +38,7 @@
 #   FREE SOFTWARE FOUNDATION, INC., 59 TEMPLE PLACE - SUITE 330,
 #   BOSTON, MA 02111-1307, USA.
 #
-#   $Id: neTrueType.pm,v 1.1 2007/11/14 22:47:59 areibens Exp $
+#   $Id: neTrueType.pm,v 1.2 2008/01/04 08:10:42 areibens Exp $
 #
 #=======================================================================
 package PDF::API2::Resource::Font::neTrueType;
@@ -76,7 +76,7 @@
 
     @ISA=qw(PDF::API2::Resource::Font);
 
-    ( $VERSION ) = sprintf '%i.%03i', split(/\./,('$Revision: 1.1 $' =~ /Revision: (\S+)\s/)[0]); # $Date: 2007/11/14 22:47:59 $
+    ( $VERSION ) = sprintf '%i.%03i', split(/\./,('$Revision: 1.2 $' =~ /Revision: (\S+)\s/)[0]); # $Date: 2008/01/04 08:10:42 $
 
 }
 no warnings qw[ deprecated recursion uninitialized ];
@@ -199,7 +199,17 @@
     read($fh,$buf, 12);
     $data->{V}->{panoseHex}=unpack('H*',$buf);
     $data->{V}->{panose}=$buf;
-
+	($data->{V}->{sFamilyClass}, $data->{V}->{bFamilyType}, $data->{V}->{bSerifStyle}, $data->{V}->{bWeight},
+		$data->{V}->{bProportion}, $data->{V}->{bContrast}, $data->{V}->{bStrokeVariation}, $data->{V}->{bArmStyle},
+		$data->{V}->{bLetterform}, $data->{V}->{bMidline}, $data->{V}->{bXheight}) = unpack('nC*',$buf);
+		
+	$data->{V}->{flags} = 0;
+    $data->{V}->{flags} |= 1 if ($data->{V}->{'bProportion'} == 9);
+    $data->{V}->{flags} |= 2 unless ($data->{V}->{'bSerifStyle'} > 10 && $data->{V}->{'bSerifStyle'} < 14);
+    $data->{V}->{flags} |= 8 if ($data->{V}->{'bFamilyType'} == 2);
+    $data->{V}->{flags} |= 32; # if ($data->{V}->{'bFamilyType'} > 3);
+    $data->{V}->{flags} |= 64 if ($data->{V}->{'bLetterform'} > 8);
+    
     seek($fh,$data->{'OS/2'}->{OFF}+42,0);
     read($fh,$buf, 16);
     $data->{V}->{ulUnicodeRange}=[ unpack('NNNN',$buf) ]; 
@@ -209,6 +219,8 @@
         seek($fh,$data->{'OS/2'}->{OFF}+78,0);
         read($fh,$buf, 8);
         $data->{V}->{ulCodePageRange}=[ unpack('NN',$buf) ]; 
+        read($fh,$buf, 4);
+        ($data->{V}->{xHeight},$data->{V}->{CapHeight})=unpack('nn',$buf); 
     }
 }
 
@@ -220,6 +232,23 @@
     read($fh,$buf, 2);
     $data->{V}->{upem}=unpack_ushort($buf);
     $data->{V}->{upemf}=1000/$data->{V}->{upem};
+
+    seek($fh,$data->{'head'}->{OFF}+36,0);
+    read($fh,$buf, 2);
+    $data->{V}->{xMin}=unpack_short($buf);
+    read($fh,$buf, 2);
+    $data->{V}->{yMin}=unpack_short($buf);
+    read($fh,$buf, 2);
+    $data->{V}->{xMax}=unpack_short($buf);
+    read($fh,$buf, 2);
+    $data->{V}->{yMax}=unpack_short($buf);
+
+    $data->{V}->{fontbbox}=[
+        int($data->{V}->{'xMin'} * $data->{V}->{upemf}),
+        int($data->{V}->{'yMin'} * $data->{V}->{upemf}),
+        int($data->{V}->{'xMax'} * $data->{V}->{upemf}),
+        int($data->{V}->{'yMax'} * $data->{V}->{upemf})
+    ];
     seek($fh,$data->{'head'}->{OFF}+50,0);
     read($fh,$data->{'head'}->{indexToLocFormat}, 2);
     $data->{'head'}->{indexToLocFormat}=unpack_ushort($data->{'head'}->{indexToLocFormat});
@@ -470,13 +499,13 @@
     read($fh,$buf, 4);
     $post->{Format}=unpack('N',$buf);
     read($fh,$buf,4);
-    $post->{italicangle}=unpack_fixed($buf);
+    $data->{V}->{italicangle}=unpack_fixed($buf);
     read($fh,$buf,2);
-    $post->{underlineposition}=unpack_f2dot14($buf)*1000;
+    $data->{V}->{underlineposition}=unpack_f2dot14($buf)*1000;
     read($fh,$buf,2);
-    $post->{underlinethickness}=unpack_f2dot14($buf)*1000;
+    $data->{V}->{underlinethickness}=unpack_f2dot14($buf)*1000;
     read($fh,$buf,4);
-    $post->{isfixedpitch}=unpack_ulong($buf);
+    $data->{V}->{isfixedpitch}=unpack_ulong($buf);
     read($fh,$buf,16);
     
     if($post->{Format} == 0x00010000)
@@ -950,6 +979,7 @@
     $data->{V}->{fontfamily}=find_name($data->{name},1);
     $data->{V}->{fontname}=find_name($data->{name},4);
     $data->{V}->{stylename}=find_name($data->{name},2);
+
     my $name = lc find_name($data->{name},1);
     my $subname = lc find_name($data->{name},2);
     my $slant='';
@@ -1125,8 +1155,11 @@
     $data=$data->{V};
     $data->{firstchar}=0;
     $data->{lastchar}=255;
-    $data->{fontbbox}=[-200,-200,1000,1000];
-    $data->{flags}='262176';
+
+    $data->{flags} |= 1 if($data->{isfixedpitch} > 0);
+    $data->{flags} |= 64 if($data->{italicangle} != 0);
+    $data->{flags} |= (1<<18) if($data->{usWeightClass} >= 600);
+    
     return($data);
 }
 

Modified: trunk/libpdf-api2-perl/lib/PDF/API2/Version.pm
URL: http://svn.debian.org/wsvn/trunk/libpdf-api2-perl/lib/PDF/API2/Version.pm?rev=12899&op=diff
==============================================================================
--- trunk/libpdf-api2-perl/lib/PDF/API2/Version.pm (original)
+++ trunk/libpdf-api2-perl/lib/PDF/API2/Version.pm Fri Jan 18 05:54:17 2008
@@ -9,14 +9,14 @@
 package PDF::API2::Version;
 BEGIN {
     use vars qw( $VERSION %CVersion );
-    $VERSION = '0.68';
+    $VERSION = '0.69';
     %CVersion = (
-        'vFredo' => 'PDF::API2 0.68',
-        'vHex' => '0x00044000',
-        'vLong' => '0.68',
-        'vPerl' => '0.68',
-        'vShort' => '0.68',
-        'vWeb' => 'PDF::API2/0.68',
+        'vFredo' => 'PDF::API2 0.69',
+        'vHex' => '0x00045000',
+        'vLong' => '0.69',
+        'vPerl' => '0.69',
+        'vShort' => '0.69',
+        'vWeb' => 'PDF::API2/0.69',
     );
 }
 1;
@@ -32,12 +32,12 @@
 
 =head1 VERSION
 
-  vFredo: PDF::API2 0.68 
-    vHex: 0x00044000 
-   vLong: 0.68 
-   vPerl: 0.68 
-  vShort: 0.68 
-    vWeb: PDF::API2/0.68 
+  vFredo: PDF::API2 0.69 
+    vHex: 0x00045000 
+   vLong: 0.69 
+   vPerl: 0.69 
+  vShort: 0.69 
+    vWeb: PDF::API2/0.69 
 
 =cut
 




More information about the Pkg-perl-cvs-commits mailing list