summaryrefslogtreecommitdiff
path: root/graphics
diff options
context:
space:
mode:
authortnn <tnn>2008-07-14 03:55:29 +0000
committertnn <tnn>2008-07-14 03:55:29 +0000
commitba80d0f67c99355d0e6a8b2260fcf87c0852cece (patch)
tree7134ef69525866ecaaaf19cb6d6d789bed5ca3f9 /graphics
parentbedbc4d965b44269b25ec31b9d217ffb6d157b8b (diff)
downloadpkgsrc-ba80d0f67c99355d0e6a8b2260fcf87c0852cece.tar.gz
Update to freetype2-2.3.7.
This is a bugfix release for the 2.3 series which provides some important fixes for bugs which were introduced in version 2.3.6. Additionally, native bytecode hinting for TrueType fonts has been improved.
Diffstat (limited to 'graphics')
-rw-r--r--graphics/freetype2/Makefile5
-rw-r--r--graphics/freetype2/distinfo9
-rw-r--r--graphics/freetype2/patches/patch-aa240
3 files changed, 6 insertions, 248 deletions
diff --git a/graphics/freetype2/Makefile b/graphics/freetype2/Makefile
index 7f0ba057616..85ac51b57ce 100644
--- a/graphics/freetype2/Makefile
+++ b/graphics/freetype2/Makefile
@@ -1,8 +1,7 @@
-# $NetBSD: Makefile,v 1.65 2008/07/08 15:44:36 drochner Exp $
+# $NetBSD: Makefile,v 1.66 2008/07/14 03:55:29 tnn Exp $
-DISTNAME= freetype-2.3.6
+DISTNAME= freetype-2.3.7
PKGNAME= ${DISTNAME:S/-/2-/}
-PKGREVISION= 1
CATEGORIES= graphics
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=freetype/} \
ftp://ring.aist.go.jp/pub/graphics/freetype/freetype2/
diff --git a/graphics/freetype2/distinfo b/graphics/freetype2/distinfo
index c3475985d1d..a01a27f9386 100644
--- a/graphics/freetype2/distinfo
+++ b/graphics/freetype2/distinfo
@@ -1,6 +1,5 @@
-$NetBSD: distinfo,v 1.27 2008/07/08 15:44:36 drochner Exp $
+$NetBSD: distinfo,v 1.28 2008/07/14 03:55:29 tnn Exp $
-SHA1 (freetype-2.3.6.tar.bz2) = 611bae913e8a593449a4dc60e0bf3300abc4f974
-RMD160 (freetype-2.3.6.tar.bz2) = 8047e734804191856a941e19f6acf82047099d66
-Size (freetype-2.3.6.tar.bz2) = 1305717 bytes
-SHA1 (patch-aa) = 4876eb28e5c5ffc9db98220f9046c639f1538bb7
+SHA1 (freetype-2.3.7.tar.bz2) = f16f849d6e739ce8842008586af36371a32ac064
+RMD160 (freetype-2.3.7.tar.bz2) = 7333507c5f42d451bf0541f007fe44165f090418
+Size (freetype-2.3.7.tar.bz2) = 1310542 bytes
diff --git a/graphics/freetype2/patches/patch-aa b/graphics/freetype2/patches/patch-aa
deleted file mode 100644
index 29864959fef..00000000000
--- a/graphics/freetype2/patches/patch-aa
+++ /dev/null
@@ -1,240 +0,0 @@
-$NetBSD: patch-aa,v 1.13 2008/07/08 15:44:36 drochner Exp $
-
---- src/cff/cffobjs.c.orig 2008-05-13 10:30:21.000000000 +0200
-+++ src/cff/cffobjs.c
-@@ -534,6 +534,111 @@
- goto Bad_Format;
- }
-
-+ if ( !dict->units_per_em )
-+ dict->units_per_em = pure_cff ? 1000 : face->root.units_per_EM;
-+
-+ /* Normalize the font matrix so that `matrix->xx' is 1; the */
-+ /* scaling is done with `units_per_em' then (at this point, */
-+ /* it already contains the scaling factor, but without */
-+ /* normalization of the matrix). */
-+ /* */
-+ /* Note that the offsets must be expressed in integer font */
-+ /* units. */
-+
-+ {
-+ FT_Matrix* matrix = &dict->font_matrix;
-+ FT_Vector* offset = &dict->font_offset;
-+ FT_ULong* upm = &dict->units_per_em;
-+ FT_Fixed temp = FT_ABS( matrix->yy );
-+
-+
-+ if ( temp != 0x10000L )
-+ {
-+ *upm = FT_DivFix( *upm, temp );
-+
-+ matrix->xx = FT_DivFix( matrix->xx, temp );
-+ matrix->yx = FT_DivFix( matrix->yx, temp );
-+ matrix->xy = FT_DivFix( matrix->xy, temp );
-+ matrix->yy = FT_DivFix( matrix->yy, temp );
-+ offset->x = FT_DivFix( offset->x, temp );
-+ offset->y = FT_DivFix( offset->y, temp );
-+ }
-+
-+ offset->x >>= 16;
-+ offset->y >>= 16;
-+ }
-+
-+ for ( i = cff->num_subfonts; i > 0; i-- )
-+ {
-+ CFF_FontRecDict sub = &cff->subfonts[i - 1]->font_dict;
-+ CFF_FontRecDict top = &cff->top_font.font_dict;
-+
-+ FT_Matrix* matrix;
-+ FT_Vector* offset;
-+ FT_ULong* upm;
-+ FT_Fixed temp;
-+
-+
-+ if ( sub->units_per_em )
-+ {
-+ FT_Int scaling;
-+
-+
-+ if ( top->units_per_em > 1 && sub->units_per_em > 1 )
-+ scaling = FT_MIN( top->units_per_em, sub->units_per_em );
-+ else
-+ scaling = 1;
-+
-+ FT_Matrix_Multiply_Scaled( &top->font_matrix,
-+ &sub->font_matrix,
-+ scaling );
-+ FT_Vector_Transform_Scaled( &sub->font_offset,
-+ &top->font_matrix,
-+ scaling );
-+
-+ sub->units_per_em = FT_MulDiv( sub->units_per_em,
-+ top->units_per_em,
-+ scaling );
-+ }
-+ else
-+ {
-+ sub->font_matrix = top->font_matrix;
-+ sub->font_offset = top->font_offset;
-+
-+ sub->units_per_em = top->units_per_em;
-+ }
-+
-+ matrix = &sub->font_matrix;
-+ offset = &sub->font_offset;
-+ upm = &sub->units_per_em;
-+ temp = FT_ABS( matrix->yy );
-+
-+ if ( temp != 0x10000L )
-+ {
-+ *upm = FT_DivFix( *upm, temp );
-+
-+ /* if *upm is larger than 100*1000 we divide by 1000 -- */
-+ /* this can happen if e.g. there is no top-font FontMatrix */
-+ /* and the subfont FontMatrix already contains the complete */
-+ /* scaling for the subfont (see section 5.11 of the PLRM) */
-+
-+ /* 100 is a heuristic value */
-+
-+ if ( *upm > 100L * 1000L )
-+ *upm = ( *upm + 500 ) / 1000;
-+
-+ matrix->xx = FT_DivFix( matrix->xx, temp );
-+ matrix->yx = FT_DivFix( matrix->yx, temp );
-+ matrix->xy = FT_DivFix( matrix->xy, temp );
-+ matrix->yy = FT_DivFix( matrix->yy, temp );
-+ offset->x = FT_DivFix( offset->x, temp );
-+ offset->y = FT_DivFix( offset->y, temp );
-+ }
-+
-+ offset->x >>= 16;
-+ offset->y >>= 16;
-+ }
-+
- if ( pure_cff )
- {
- char* style_name = NULL;
-@@ -554,8 +659,6 @@
- cffface->bbox.xMax = ( dict->font_bbox.xMax + 0xFFFFU ) >> 16;
- cffface->bbox.yMax = ( dict->font_bbox.yMax + 0xFFFFU ) >> 16;
-
-- if ( !dict->units_per_em )
-- dict->units_per_em = 1000;
-
- cffface->units_per_EM = dict->units_per_em;
-
-@@ -711,114 +814,8 @@
-
- cffface->style_flags = flags;
- }
-- else
-- {
-- if ( !dict->units_per_em )
-- dict->units_per_em = face->root.units_per_EM;
-- }
--
-- /* Normalize the font matrix so that `matrix->xx' is 1; the */
-- /* scaling is done with `units_per_em' then (at this point, */
-- /* it already contains the scaling factor, but without */
-- /* normalization of the matrix). */
-- /* */
-- /* Note that the offsets must be expressed in integer font */
-- /* units. */
--
-- {
-- FT_Matrix* matrix = &dict->font_matrix;
-- FT_Vector* offset = &dict->font_offset;
-- FT_ULong* upm = &dict->units_per_em;
-- FT_Fixed temp = FT_ABS( matrix->yy );
--
--
-- if ( temp != 0x10000L )
-- {
-- *upm = FT_DivFix( *upm, temp );
--
-- matrix->xx = FT_DivFix( matrix->xx, temp );
-- matrix->yx = FT_DivFix( matrix->yx, temp );
-- matrix->xy = FT_DivFix( matrix->xy, temp );
-- matrix->yy = FT_DivFix( matrix->yy, temp );
-- offset->x = FT_DivFix( offset->x, temp );
-- offset->y = FT_DivFix( offset->y, temp );
-- }
--
-- offset->x >>= 16;
-- offset->y >>= 16;
-- }
--
-- for ( i = cff->num_subfonts; i > 0; i-- )
-- {
-- CFF_FontRecDict sub = &cff->subfonts[i - 1]->font_dict;
-- CFF_FontRecDict top = &cff->top_font.font_dict;
--
-- FT_Matrix* matrix;
-- FT_Vector* offset;
-- FT_ULong* upm;
-- FT_Fixed temp;
-
-
-- if ( sub->units_per_em )
-- {
-- FT_Int scaling;
--
--
-- if ( top->units_per_em > 1 && sub->units_per_em > 1 )
-- scaling = FT_MIN( top->units_per_em, sub->units_per_em );
-- else
-- scaling = 1;
--
-- FT_Matrix_Multiply_Scaled( &top->font_matrix,
-- &sub->font_matrix,
-- scaling );
-- FT_Vector_Transform_Scaled( &sub->font_offset,
-- &top->font_matrix,
-- scaling );
--
-- sub->units_per_em = FT_MulDiv( sub->units_per_em,
-- top->units_per_em,
-- scaling );
-- }
-- else
-- {
-- sub->font_matrix = top->font_matrix;
-- sub->font_offset = top->font_offset;
--
-- sub->units_per_em = top->units_per_em;
-- }
--
-- matrix = &sub->font_matrix;
-- offset = &sub->font_offset;
-- upm = &sub->units_per_em;
-- temp = FT_ABS( matrix->yy );
--
-- if ( temp != 0x10000L )
-- {
-- *upm = FT_DivFix( *upm, temp );
--
-- /* if *upm is larger than 100*1000 we divide by 1000 -- */
-- /* this can happen if e.g. there is no top-font FontMatrix */
-- /* and the subfont FontMatrix already contains the complete */
-- /* scaling for the subfont (see section 5.11 of the PLRM) */
--
-- /* 100 is a heuristic value */
--
-- if ( *upm > 100L * 1000L )
-- *upm = ( *upm + 500 ) / 1000;
--
-- matrix->xx = FT_DivFix( matrix->xx, temp );
-- matrix->yx = FT_DivFix( matrix->yx, temp );
-- matrix->xy = FT_DivFix( matrix->xy, temp );
-- matrix->yy = FT_DivFix( matrix->yy, temp );
-- offset->x = FT_DivFix( offset->x, temp );
-- offset->y = FT_DivFix( offset->y, temp );
-- }
--
-- offset->x >>= 16;
-- offset->y >>= 16;
-- }
--
- #ifndef FT_CONFIG_OPTION_NO_GLYPH_NAMES
- /* CID-keyed CFF fonts don't have glyph names -- the SFNT loader */
- /* has unset this flag because of the 3.0 `post' table. */