Formatting.

This commit is contained in:
Werner Lemberg 2002-01-09 21:01:18 +00:00
parent 944ac3747e
commit b8ced96ce3
13 changed files with 124 additions and 112 deletions

View File

@ -1,37 +1,46 @@
2002-01-09 David Turner <david@freetype.org>
* builds/unix/configure.ac: Build top-level Jamfile.
2002-01-09 Maxim Shemanarev <mcseemagg@yahoo.com>
* src/smooth/ftgrays.c (gray_render_line): small optimisation to
the smooth anti-aliased renderer that deals with vertical segments.
This results in a 5-7% speedup in rendering speed..
* src/smooth/ftgrays.c (gray_render_line): Small optimization to
the smooth anti-aliased renderer that deals with vertical segments.
This results in a 5-7% speedup in rendering speed.
2002-01-08 David Turner <david@freetype.org>
* configure, install: added some wrapper scripts to make
the installation more Unix-friendly..
Added some wrapper scripts to make the installation more
Unix-friendly.
* INSTALL, README.UNX: updated installation documentation
to use the new 'configure' and 'install' scripts..
Oh my.., why didn't we do that before the 2.0.6 release :-)
* configure, install: New files.
* INSTALL, README.UNX: Updated installation documentation to use the
new 'configure' and 'install' scripts.
2002-01-07 David Turner <david@freetype.org>
* Version 2.0.6 released.
=========================
* docs/BUGS, docs/CHANGES: updating documentation for 2.0.6 release
* src/tools/docmaker.py: fixed HTML quoting in sources
* docs/BUGS, docs/CHANGES: Updating documentation for 2.0.6 release.
* include/freetype/config/ftoption.h: setting default options for
a release build (debugging off, bytecode interpreter off)
* src/tools/docmaker.py: Fixed HTML quoting in sources.
(html_format): Replaced with ...
(html_quote): New function.
(html_quote0): New function.
(DocCode::dump_html: Small improvement.
(DocParagraph::dump, DocBlock::html): Use html_quote0 and html_quote.
* src/base/ftobjs.c, src/base/ftoutln.c, src/cache/ftccmap.c,
src/cff/cffload.c, src/cff/cffobjs.c, src/pshinter/pshalgo2.c,
src/sfnt/ttload.c, src/sfnt/ttsbit.c: removing small compiler
warnings (in pedantic compilation modes)
* include/freetype/config/ftoption.h: Setting default options for
a release build (debugging off, bytecode interpreter off).
* src/base/ftobjs.c, src/base/ftoutln.c, src/cache/ftccmap.c,
src/cff/cffload.c, src/cff/cffobjs.c, src/pshinter/pshalgo2.c,
src/sfnt/ttload.c, src/sfnt/ttsbit.c: Removing small compiler
warnings (in pedantic compilation modes).
2002-01-05 David Turner <david@freetype.org>

40
INSTALL
View File

@ -2,31 +2,27 @@ In order to build the library, read the `BUILD' document in the `docs'
directory. This is only a quick starter.
I. UNIX SYSTEMS:
----------------
Simply type:
./configure
make
./install
on the command line to configure, build and install FreeType
on your system. Note that the default installation path is
"/usr/local".
Please read the file README.UNX, it contains _critical_
information regarding the installation of FreeType on
many Unix systems.
I. Unix systems
---------------
Simply type
./configure
make
./install
on the command line to configure, build and install FreeType on your
system. Note that the default installation path is "/usr/local".
Please read the file README.UNX, it contains _critical_ information
regarding the installation of FreeType on many Unix systems.
II. From the command line
------------------------
-------------------------
If you're not on Unix, there are two ways to quickly
build FreeType 2 from the command line.
If you are not using Unix, there are two ways to quickly build
FreeType 2 from the command line.
The first, and favorite one, is to use the "Jam" build tool. Jam is
a highly portable replacement for Make whose control files do not
@ -60,7 +56,7 @@ II. From the command line
jam
In later releases of FT2, building shared libraries with Jam
should become automatic on Unix systems..
should become automatic on Unix systems.
2. Building FT2 with "GNU Make"

12
configure vendored
View File

@ -1,9 +1,11 @@
#!/bin/sh
# call the 'configure' script located in 'builds/unix'
# this should re-generate the following files:
#
# config.mk
# Jamfile
# install
# Call the 'configure' script located in 'builds/unix'.
#
# This should re-generate the following files:
#
# config.mk
# Jamfile
# install
#
make setup unix CFG="$@"

View File

@ -7,7 +7,7 @@ description of the bug is found below the table of opened bugs.
"Date" is the date when the bug was first reported or entered in this
document. Dates are in _European_ format, i.e day/month/year.
"Opened By" is the name of the person who first spotted the bug. Note that
"Opened By" is the name of the person who first spotted the bug. Note that
we can use abbreviations here, like:
"David" for David Turner
@ -20,8 +20,8 @@ always happens, or only sporadically, etc.
I. Opened bugs
==============
I. Open bugs
============
Identifier Date Opened by Reproduceable
@ -36,8 +36,8 @@ ADVANCED-COMPOSITES 25-10-2001 George Williams always
II. Table of closed bugs
========================
II. Closed bugs
===============
Identifier Date Closed by Closure date
@ -58,7 +58,8 @@ GLYPH-TO-BITMAP-BUG 15-12-2001 David 2.0.6
III. Bug descriptions
=====================
--- START OF OPENED BUGS ---
--- START OF OPEN BUGS ---
NO-CID-CMAPS
@ -81,7 +82,7 @@ BAD-TT-RENDERING
Some of this has been fixed in 2.0.6; there was a bug in the TrueType
loader that prevented it from loading composites correctly. However,
there are still _subtle_ differences between FT1 and FT2 when it comes to
monochrome TrueType-hinted glyphs (the major differences are gone though !!)
monochrome TrueType-hinted glyphs (the major differences are gone though).
@ -143,7 +144,8 @@ ADVANCED-COMPOSITES
--- END OF OPENED BUGS ---
--- END OF OPEN BUGS ---
BAD-TTNAMEID.H
@ -170,6 +172,7 @@ BAD-TTNAMEID.H
FreeType followed the most recent TrueType/OpenType specification here.
AUTOHINT-SBITS
When trying to load a glyph, with the auto-hinter activated (i.e., when
@ -186,6 +189,7 @@ AUTOHINT-SBITS
further release like FreeType 2.1.
BAD-T1-CHARMAP
Type1 driver doesn't read "cacute" and "lslash" characters from iso8859-2
@ -196,6 +200,7 @@ BAD-T1-CHARMAP
table of glyph names in 'src/psaux/pstables.h'.)
BAD-UNIXXXX-NAMES
Glyph names like uniXXXX are not recognized as they should be. It seems
@ -206,6 +211,7 @@ BAD-UNIXXXX-NAMES
any Postscript font that use this convention, unfortunately.)
GLYPH_TO_BITMAP-BUG
Calling FT_Glyph_To_Bitmap() sometimes modifies the original glyph
@ -225,45 +231,45 @@ GLYPH_TO_BITMAP-BUG
TT-GLYPH-CRASH
The library crashed when trying to load certain glyphs from an
automatically generated TrueType file (tt1095m_.ttf submitted by
Scott Long).
automatically generated TrueType file (tt1095m_.ttf submitted by Scott
Long).
It turned out that the font contained invalid glyph data (i.e. was broken),
but the TrueType glyph loader in FreeType wasn't paranoid enough, which
resulted in nasty memory overwrites all over the place.
It turned out that the font contained invalid glyph data (i.e. was
broken), but the TrueType glyph loader in FreeType wasn't paranoid enough,
which resulted in nasty memory overwrites all over the place.
T1-FONT-CRASH
The library crashed when trying to load the "Stalingrad Regular" face
from the "sadn.pfb" font file provided by Anthony Fok (and the Gnome-Print
team I believe).
The library crashed when trying to load the "Stalingrad Regular" face from
the "sadn.pfb" font file provided by Anthony Fok (and the Gnome-Print team
I believe).
This was due to the fact that the font missed a full font name entry,
though boasted a family name and postscript name. The Type 1 face loader
didn't check for these pathetic cases and seg-faulted..
though boasted a family name and postscript name. The Type 1 face loader
didn't check for these pathetic cases and seg-faulted.
BAD-ADVANCES
All scalable font drivers returned un-fitted glyph advances when
FT_LOAD_DEFAULT was used, which was incorrect. This problem was pretty
old but hadn't been spotted because all test programs actually
explicitely or implicitely (i.e. through the cache) rounded the advance
widths of glyphs..
FT_LOAD_DEFAULT was used, which was incorrect. This problem was pretty
old but hadn't been spotted because all test programs actually explicitly
or implicitly (i.e. through the cache) rounded the advance widths of
glyphs.
This resulted in poor rendering of a number of client applications
however (it's strange to see they took so long to notice the devel team ?)
This resulted in poor rendering of a number of client applications however
(it is strange to see they took so long to notify the FreeType team).
GLYPH-TO-BITMAP-BUG
the FT_Glyph_ToBitmap did incorrectly modify the source glyph in certain
cases, which resulted in random behaviour and bad text rendering. This was
spotted to bugs in both the monochrome and smooth rasterizer..
FT_Glyph_To_Bitmap() did incorrectly modify the source glyph in certain
cases, which resulted in random behaviour and bad text rendering. This
was spotted to bugs in both the monochrome and smooth rasterizer.
=== end of file ===

View File

@ -25,15 +25,14 @@ LATEST CHANGES BETWEEN 2.0.6 and 2.0.5
- "glnames.py" still contained a bug that made FreeType return invalid
names for certain glyphs.
- the library crashed when loading certain Type 1 fonts like "sadn.pfb"
- The library crashed when loading certain Type 1 fonts like "sadn.pfb"
("Stalingrad Normal"), which appear to contain pathetic font info
dictionaries..
dictionaries.
- the TrueType glyph loader is now much more paranoid and checks everything
when loading a given glyph image. This was necessary to avoid problems
(crashes and/or memory overwrites) with broken fonts that came from a
really buggy automatic font converter..
- The TrueType glyph loader is now much more paranoid and checks everything
when loading a given glyph image. This was necessary to avoid
problems (crashes and/or memory overwrites) with broken fonts that
came from a really buggy automatic font converter.
II. IMPORTANT UPDATES AND NEW FEATURES
@ -80,19 +79,18 @@ LATEST CHANGES BETWEEN 2.0.6 and 2.0.5
These are most probably due to small differences in the monochrome
rasterizers and will be worked out in an upcoming release.
- We have decided to fork the sources in a "stable" branch, and an
"unstable" one, since FreeType is becoming a critical component of
many Unix systems.
The next bug-fix releases of the library will be named 2.0.7,
2.0.8, etc.. while the "2.1" branch will contain a version of the
sources where we'll start major reworking of the library's internals,
in order to produce FreeType 2.2.0 (or even 3.0) in a more distant
The next bug-fix releases of the library will be named 2.0.7, 2.0.8,
etc., while the "2.1" branch will contain a version of the sources
where we will start major reworking of the library's internals, in
order to produce FreeType 2.2.0 (or even 3.0) in a more distant
future.
We also hope that this scheme will allow much more frequent releases
than in the past
than in the past.
============================================================================

View File

@ -892,10 +892,10 @@ FT_BEGIN_HEADER
/* user :: User-supplied data that is passed to each drawing */
/* callback. */
/* */
/* clip_box :: an optional clipping box. It is only used in */
/* direct rendering mode. Note that coordinates */
/* here should be expressed in _integer_ pixels */
/* (and not 26.6 fixed-point units) */
/* clip_box :: An optional clipping box. It is only used in */
/* direct rendering mode. Note that coordinates here */
/* should be expressed in _integer_ pixels (and not in */
/* 26.6 fixed-point units). */
/* */
/* <Note> */
/* An anti-aliased glyph bitmap is drawn if the ft_raster_flag_aa bit */

View File

@ -1,2 +1,2 @@
#! /bin/sh
make install
make install

4
src/cache/ftccmap.c vendored
View File

@ -130,7 +130,7 @@
FT_CALLBACK_DEF( FT_ULong )
ftc_cmap_node_weight( FTC_CMapNode cnode )
{
FT_UNUSED(cnode);
FT_UNUSED( cnode );
return sizeof ( *cnode );
}
@ -375,7 +375,7 @@
/* perform lookup */
gindex = FT_Get_Char_Index( face, char_code );
node->indices[offset] = (FT_UInt16) gindex;
node->indices[offset] = (FT_UInt16)gindex;
/* restore old charmap */
FT_Set_Charmap( face, old );

View File

@ -120,34 +120,34 @@
count = priv.num_blue_values = cpriv->num_blue_values;
for ( n = 0; n < count; n++ )
priv.blue_values[n] = (FT_Short) cpriv->blue_values[n];
priv.blue_values[n] = (FT_Short)cpriv->blue_values[n];
count = priv.num_other_blues = cpriv->num_other_blues;
for ( n = 0; n < count; n++ )
priv.other_blues[n] = (FT_Short) cpriv->other_blues[n];
priv.other_blues[n] = (FT_Short)cpriv->other_blues[n];
count = priv.num_family_blues = cpriv->num_family_blues;
for ( n = 0; n < count; n++ )
priv.family_blues[n] = (FT_Short) cpriv->family_blues[n];
priv.family_blues[n] = (FT_Short)cpriv->family_blues[n];
count = priv.num_family_other_blues = cpriv->num_family_other_blues;
for ( n = 0; n < count; n++ )
priv.family_other_blues[n] = (FT_Short) cpriv->family_other_blues[n];
priv.family_other_blues[n] = (FT_Short)cpriv->family_other_blues[n];
priv.blue_scale = cpriv->blue_scale;
priv.blue_shift = cpriv->blue_shift;
priv.blue_fuzz = cpriv->blue_fuzz;
priv.standard_width[0] = (FT_UShort) cpriv->standard_width;
priv.standard_height[0] = (FT_UShort) cpriv->standard_height;
priv.standard_width[0] = (FT_UShort)cpriv->standard_width;
priv.standard_height[0] = (FT_UShort)cpriv->standard_height;
count = priv.num_snap_widths = cpriv->num_snap_widths;
for ( n = 0; n < count; n++ )
priv.snap_widths[n] = (FT_Short) cpriv->snap_widths[n];
priv.snap_widths[n] = (FT_Short)cpriv->snap_widths[n];
count = priv.num_snap_heights = cpriv->num_snap_heights;
for ( n = 0; n < count; n++ )
priv.snap_heights[n] = (FT_Short) cpriv->snap_heights[n];
priv.snap_heights[n] = (FT_Short)cpriv->snap_heights[n];
priv.force_bold = cpriv->force_bold;
priv.language_group = cpriv->language_group;

View File

@ -1044,7 +1044,7 @@
vec[n].y = point->cur_u;
if ( psh2_point_is_strong( point ) )
tags[n] |= (char)((dimension == 0) ? 32 : 64);
tags[n] |= (char)( ( dimension == 0 ) ? 32 : 64 );
#ifdef DEBUG_HINTER
if ( dimension == 0 )

View File

@ -649,8 +649,8 @@
/* We also increase maxPoints and maxContours in order to support */
/* some broken fonts. */
face->root.internal->max_points += (FT_UShort) 8;
face->root.internal->max_contours += (FT_Short) 4;
face->root.internal->max_points += (FT_UShort)8;
face->root.internal->max_contours += (FT_Short) 4;
}
FT_TRACE2(( "MAXP loaded.\n" ));

View File

@ -131,8 +131,8 @@
val = (FT_Byte)( acc >> 8 );
if ( shift )
{
cur[0] |= (FT_Byte)(val >> shift);
cur[1] |= (FT_Byte)(val << space);
cur[0] |= (FT_Byte)( val >> shift );
cur[1] |= (FT_Byte)( val << space );
}
else
cur[0] |= val;
@ -164,10 +164,10 @@
/* now write remaining bits */
val = (FT_Byte)( ( (FT_Byte)( acc >> 8 ) ) & ~( 0xFF >> count ) );
cur[0] |= (FT_Byte)(val >> shift);
cur[0] |= (FT_Byte)( val >> shift );
if ( count > space )
cur[1] |= (FT_Byte)(val << space);
cur[1] |= (FT_Byte)( val << space );
acc <<= count;
loaded -= count;

View File

@ -635,17 +635,18 @@
goto End;
}
/* vertical line - avoids calling gray_render_scanline */
/* vertical line - avoid calling gray_render_scanline */
incr = 1;
if( dx == 0 )
if ( dx == 0 )
{
TScan ex = TRUNC( ras.x );
TScan two_fx = ( ras.x - SUBPIXELS( ex ) ) << 1;
TPos area;
TScan ex = TRUNC( ras.x );
TScan two_fx = ( ras.x - SUBPIXELS( ex ) ) << 1;
TPos area;
first = ONE_PIXEL;
if( dy < 0 )
if ( dy < 0 )
{
first = 0;
incr = -1;