Commit Graph

1785 Commits

Author SHA1 Message Date
David Turner
76a5f62323 major reformatting of the sources:
FT_EXPORT_DEF    => FT_EXPORT
  FT_EXPORT_FUNC => FT_EXPORT_DEF
  BASE_DEF               => FT_BASE
  BASE_FUNC            => FT_BASE_DEF
  LOCAL_DEF             => FT_LOCAL
  LOCAL_FUNC          => FT_LOCAL_DEF
  LOCAL_FUNC_X     => FT_CALLBACK_DEF
  LOCAL_DEF_X       => FT_CALLBACK_TABLE
  FT_CPLUSPLUS     => FT_CALLBACK_TABLE_DEF
2000-11-04 01:55:49 +00:00
Werner Lemberg
4091109486 Don't access freed variables... 2000-11-03 07:57:51 +00:00
Werner Lemberg
7b45c28dd5 Remove redundant code; fix computation of `last'. 2000-11-03 07:34:29 +00:00
Werner Lemberg
a13a473dd9 More C++ fixes. 2000-11-02 15:14:38 +00:00
Werner Lemberg
21fb2d9513 Adding header file for labs(). 2000-11-02 08:20:15 +00:00
Werner Lemberg
ab8552321c Fixing include header for a `make multi' build.
Finishing formatting of cache stuff.

Fixed getDriverClass stuff -- added it to winfnt.c also.  Note that this
still has to be documented.
2000-10-31 22:13:54 +00:00
Werner Lemberg
e4b32a5dc5 Removing trailing whitespace. 2000-10-31 20:42:18 +00:00
Werner Lemberg
3dc4374f43 Formatting.
Removed double src/cache/ftcimage.h.

Replaced FTC_Image_Type with #defines since this contains bit flags and not
enumerated values.
2000-10-31 17:49:07 +00:00
David Turner
2909475716 at last, the infamous cache bug is fixed !! 2000-10-31 10:58:23 +00:00
Tom Kacvinsky
6043b2404e In function FTC_ChunkSet_Destroy, changed manaher' to manager'. Just
a fix for a silly typo.
2000-10-29 01:47:51 +00:00
David Turner
ece6379859 completed the sbit cache, though it's still buggy :-(
major reformatting of the cache subsystem (again)
added substantial documentation too in header files
2000-10-28 23:34:45 +00:00
Werner Lemberg
b5084e11f7 Renamed z1* files back to t1*; the same transition for Z1_* structures
Removed obsolete raster1/* files.
2000-10-28 17:10:06 +00:00
David Turner
4e4a43631c - completed the abstract chunk cache class
- started implementin a "small-bitmaps" cache derived from it
- (soon a "metrics" cache will be written too)
2000-10-28 13:17:11 +00:00
David Turner
9b8f5c4ce1 small updates:
- reworked slightly the cache manager to better
   differentiate between the abstract class in "ftcglyph.h"
   and the FT_Glyph sub-class in "ftcimage.h", and
   slightly reduced the size of FTC_GlyphNodeRec, saving
   8 bytes on a 32-bit system. Yes, I'm crazy ;-)

 - added build files to compile with LCC on Unix too
   (compile speeds _are_ insane with it). There is unfortunately
   a bug in the version I'm using (LCC 4.1) that prevents it
   to compile FT_MulTo64 correctly (in src/base/ftcalc.c)

   the generated assembly is incorrect, I don't know what
   to do ?? the build files are ok, though..

   you should invoke "make setup lcc" to select them..
2000-10-28 07:26:59 +00:00
David Turner
47c14b9db3 fixing a small bug in FT_Glyph_To_Bitmap:
the glyph advance wasn't copied to the bitmap !!
2000-10-27 00:53:16 +00:00
Werner Lemberg
ddbb8e7b6a Some formatting.
Fixed some data types/added header files to remove compiler warnings.

Added trivial input data check to FT_Outline_Get_BBox().

Fixed type1z -> type1 file inclusions.
2000-10-26 10:04:16 +00:00
David Turner
a4e2894e03 simple renaming of directories:
"type1z"  -> "type1"
  "raster1" -> "raster"

note that I didn't rename all files. We'll have to endure
the "z1..." crazyness unless we perform a _big_ sed on
the sources :-)
2000-10-26 00:30:33 +00:00
David Turner
3a3ffedcb2 adding "ftbbox" to build rules 2000-10-26 00:08:15 +00:00
David Turner
54169b35f8 - reviving the "ftbbox" component, used to compute exact bounding
box computations

- minor update to docmaker.py, more is coming
2000-10-26 00:06:35 +00:00
Werner Lemberg
6a4253388b fixes for fixes :-)
formatting; compiles now without warnings on my Linux box
2000-10-24 05:44:59 +00:00
David Turner
dc26e7b77f - minor reformatting of "ftmodule.h"
- added missing "const" statements in the source code in order
  to really get rid of writable static variables
2000-10-23 22:46:56 +00:00
Werner Lemberg
05f0ad098f Converting tabs to spaces in z1load.
Edited FT1's convntns.txt and added it to FT2.
2000-10-19 05:12:00 +00:00
Tom Kacvinsky
40822003da In function parse_encoding, initialize encoding_table.elements to have
.notdef in each entry.

In function parse_charstrings, place the .notdef glyph in index 0, and
add a .notdef glyph if it is missing.

In function Z1_Open_Face, only change min/max encoded char if it is not
.notdef.
2000-10-17 20:25:30 +00:00
Werner Lemberg
5a96b07c1f Fixed two typos spotted by Ryan Martindale <ryan@qsicorp.com>. 2000-10-17 14:29:48 +00:00
Werner Lemberg
47a5f41de6 Added copyright messages to all Makefiles.
Added documentation to FT_Get_Sfnt_* stuff (in ftnames.[ch])

minor other doc fixes
2000-10-17 03:38:43 +00:00
Werner Lemberg
c1635d44f9 ftnames.c has been erroneously included twice. 2000-10-15 23:32:01 +00:00
Werner Lemberg
0bf381f7ab Make ftsynth.c work again.
Renamed FT_*_Outline to FT_Outline_*
2000-10-15 21:59:58 +00:00
Werner Lemberg
dc268f24ba Fix typo (FT_... -> TT_...) 2000-10-15 17:59:17 +00:00
Tom Kacvinsky
95ac657e18 Minor fix in Z1_Open_Face for building char_index table 2000-10-15 08:53:27 +00:00
Werner Lemberg
e67e349a0b More fixes to the tutorial.
Added artificial Type 1 pid/eid paors to ttnameid.h.
2000-10-13 21:00:36 +00:00
Werner Lemberg
eddd9909e2 formatting
small fixes
2000-10-12 05:05:40 +00:00
David Turner
f88969ab6c the function FTC_Manager_Lookup_Size will return a valid
FT_Face handle, even if no size was found..
2000-10-12 00:28:00 +00:00
David Turner
b89fb71ce6 fixed a subtle 64-bit problem that only appears with
Compaq C compiler (though it's really a bug)
2000-10-11 23:39:03 +00:00
Werner Lemberg
a7096374ee Added new `ft_glyph_bbox_unscaled' enum; fixing documentation of
FT_Glyph_Get_CBox().

ftnames.c has been omitted from the Makefile.
2000-10-11 23:31:12 +00:00
Werner Lemberg
3d568ac772 A fix from Yamano'uchi to get correct font names. 2000-10-11 14:59:46 +00:00
Werner Lemberg
eadc8df24d A fix from Tom to fix the last=first point problem if it is a control point. 2000-10-11 05:52:42 +00:00
Werner Lemberg
0634cedb62 patch from Tom to fix a problem with path_begun. 2000-10-09 01:44:40 +00:00
Werner Lemberg
6fbe4db6b7 minor formatting issues 2000-10-05 04:53:31 +00:00
David Turner
f00a4de92b fixed two bugs:
- one bug in the auto-hinter that could cause some program
    crashes with certain fonts

  - fixed the loading of the font matrix "offset" parameters
    in Type 1 and CID-keyed fonts..
2000-10-03 22:03:09 +00:00
David Turner
ec0b2cd974 small fix:
when in direct rendering mode, the target bitmap buffer
  is not checked..
2000-10-03 19:22:52 +00:00
David Turner
78dd7104ef small fix:
when in direct rendering mode, the target bitmap buffer
  is not checked..
2000-10-03 19:13:11 +00:00
David Turner
a0be99f131 changing the linkage type of
FT_New_GlyphSlot and FT_Done_GlyphSlot to
BASE_DEF instead of FT_EXPORT_DEF
2000-10-03 18:02:02 +00:00
Werner Lemberg
8bb45ec8fb Fixing comment in unixddef.mk which caused a trailing blank.
Adding a new error, FT_Err_Invalid_Pixel_Size (used in winfnt.c)

Fixing FT_Read_Fields() which failed for ft_frame_{bytes,skip}.  This bug
disabled the Winfont driver.

Minor formatting issues.
2000-09-29 06:41:56 +00:00
David Turner
42022c8c94 fixed a bug in the Type 1 and CID font drivers:
the value of the descent returned was positive,
  instead of being negative..
2000-09-27 01:01:10 +00:00
Werner Lemberg
8925009f79 Adding missing code for flat compiling mode. 2000-09-26 13:25:15 +00:00
Werner Lemberg
f50c2954d4 Fixed typo in ftimage.h
Fixed sbit on/off flag in cache code.
2000-09-22 06:52:20 +00:00
Werner Lemberg
50dd5858a7 Applied a patch from Hidetoshi for embedded bitmap metrics support. 2000-09-22 03:37:45 +00:00
Werner Lemberg
1a2908bbc0 Added support for (3,0) pid/eid. 2000-09-21 14:10:23 +00:00
David Turner
4e38576a97 fixed a bug that happened when rendering spaces
in monochrome mode..

actually, when outline.num_points == 0, it is legal
to have outline.points == 0 too. The code did return
a FT_Err_Invalid_Outline error incorrectly then because
the checks were not performed in the correct order
2000-09-19 19:44:42 +00:00
David Turner
ebdce8344a updated the cache sub-system. Major internal rewrite
please be aware that major bug persist..
2000-09-19 01:11:11 +00:00
David Turner
b71c6af028 fixed minor bug in the smooth renderer which forced
the span callback to be called with y == -1 and count == 0
2000-09-17 17:17:16 +00:00
David Turner
d38a4f6593 removed obsolete files 2000-09-15 22:42:43 +00:00
David Turner
b8817177a0 small bug-fix, the linearHoriBearing value was not
loaded not computed correctly
2000-09-15 17:17:17 +00:00
David Turner
c9ce9e4e3f small bug-fix 2000-09-15 17:16:49 +00:00
David Turner
f2545e8078 fixed a very stupid bug that prevented FT_Outline_Render from
working correctly..
2000-09-15 03:37:16 +00:00
Werner Lemberg
f9b0375002 small formatting issues. 2000-09-11 22:50:13 +00:00
David Turner
a8194a97db - added a new function called FT_SqrtFixed to compute the
16.16 square root of a 16.16 number (this could come handy
  in a later version of the auto-hinter)

- small fixes to the smooth renderer. It used to use way too
  much line segments when drawing beziers !!
2000-09-02 00:20:42 +00:00
Werner Lemberg
21a27ee3cb Fixed a long outstanding bug with an incorrect offset for reading post
tables.
2000-09-01 14:36:39 +00:00
David Turner
7909673992 - the file "ftlist.h" was moved from <freetype/internal/..> to
<freetype/...>

- bugfix for the cache sub-system..
2000-08-30 21:40:45 +00:00
Werner Lemberg
353dfeafa3 More warnings fixed. 2000-08-29 18:58:41 +00:00
Werner Lemberg
4a5c142a40 Minor fixes. 2000-08-29 18:37:25 +00:00
Werner Lemberg
4e9dae68b7 Introducing new macro LOCA_VAR to solve some problems with structures
containing function pointers.

FT will now compile again with C++.
2000-08-29 16:50:01 +00:00
David Turner
80b96f350c fixed some bugs in the caching sub-system and improved
its API to enable many kinds of glyph images..

(note that the "ftview" program has been changed to
use the caching sub-system, "ftmulti" and "ftstring"
should come soon).
2000-08-29 16:04:28 +00:00
David Turner
e12e313a04 a small optimisation that should speed things a bit.
I'm surprised I didn't do it before..
2000-08-29 16:03:28 +00:00
David Turner
5878a6d2ad a fix to the computation of the font "text height" (i.e. the
baseline-to-baseline distance).

Unfortunately, we cannot rely on the OS/2 fields, like
sTypoAscender or usWinAscent to compute it. Rather,
we only look at the horizontal header's content. In case
the "line gap" is set to 0, we compute the text height as
115% of the ascender+descender value..

(this percentage is based on the values found in many
Windows fonts).
2000-08-29 16:03:01 +00:00
Werner Lemberg
95853c87f5 Introducing new error code FT_Err_Invalid_Cache_Handle.
Regrouping of error codes.
2000-08-26 22:16:44 +00:00
Just van Rossum
9b4bb291d9 #include <freetype/internal/ftdebug.h> /* for FT_ERROR() */ 2000-08-25 20:00:58 +00:00
Werner Lemberg
d1b7475be1 Formatting, small fixes.
Adding basic input parameter checking for exported functions.
2000-08-24 16:29:15 +00:00
David Turner
35db73220c - fixed an horrible FT_LOAD_RENDER bug that returned empty
bitmaps !!

- tested and fixed the image cache object. I'm performing a
  few more checks though, and we'll call the cache sub-system
  completed !!
2000-08-24 12:39:40 +00:00
David Turner
98d2701c58 changed the FTC_Manager_New function to accept "max_faces" and
"max_sizes" parameters

fixed some bugs. the cache manager is now tested and validated
(now, it's time for the glyph image cache)
2000-08-24 11:53:35 +00:00
Just van Rossum
4a47f668a1 fixed typo in FT_FLAT_COMPILE section 2000-08-24 00:43:08 +00:00
David Turner
fcf5e68650 renamed "psmodule.c" to "psauxmod.c" 2000-08-24 00:30:24 +00:00
David Turner
888706a317 removing obsolete files 2000-08-23 22:50:39 +00:00
David Turner
b8a7a0bdea removing obsolete files. These are moved to a new
CVS module called "ftlayout"
2000-08-23 22:48:50 +00:00
David Turner
34f1c2f5f4 finally, the CID and Type1z driver are finished !!
Werner, please have a look at the code and start
re-formatting it :-)
2000-08-23 22:47:44 +00:00
David Turner
3b2c50eb3b completing the FreeType Cache subsystem files 2000-08-23 21:11:13 +00:00
Werner Lemberg
8728f294bc Formatting, small fixes.
Adding copyright notices etc.
2000-08-23 17:32:42 +00:00
David Turner
b466a7650c The FreeType Caching Subsystem - first lines of code
beware, this code is not tested, and probably doesn't compile
correctly.. more information will follow..
2000-08-23 11:22:30 +00:00
David Turner
a39acf55f7 updated "psaux" and "type1z".
The Type 1 driver now completely relies on "psaux". I
now need to change the CID driver accordingly, then
finally move the Type 2 parsing routines to "psaux"
when appropriate..
2000-08-23 02:47:57 +00:00
David Turner
d8b4514d43 added preliminary emboldening code.. still _very_
experimental
2000-08-22 22:53:03 +00:00
David Turner
9748807412 the psaux module is now nearly completed
the "type1z" driver uses it to parse Type 1 charstrings
(not to parse the Type 1 token stream yet though)..
2000-08-22 22:36:33 +00:00
David Turner
f95a603117 minor updates to the "psaux" module.
Werner, please do not start re-formatting my experimental
code until I declare it "finished", because I still make big
changes to it that create lots of CVS conflicts..

thanks for your work, anyway :-)
2000-08-21 04:58:49 +00:00
David Turner
c38ddff8ac fixed a _serious_ bug in FT_Glyph_Get_CBox 2000-08-21 04:43:01 +00:00
Werner Lemberg
b1c8bf0683 Minor formatting.
Adding copyright/C++ guards to psaux files.
2000-08-17 07:18:04 +00:00
David Turner
24d7024c44 added draft "psaux" code
the t1 driver now reads the complete font matrix

and applies it (some fonts do not work properly without
hinting though...)
2000-08-17 01:09:06 +00:00
David Turner
710354b8e9 fixed the bug that prevented bitmap formats to be loaded
correctly when the auto-hinter is used (symptom: "winfonts"
driver didn't load bitmaps correctly).
2000-08-16 17:04:22 +00:00
Werner Lemberg
9a814fabbf Yamano-uchi added support for SFNT-wrapped CID bitmap font files (with
minor modifications from WL).
2000-08-06 19:48:47 +00:00
Werner Lemberg
29a90e2610 Updating unix/ftconfig.in to recent config/ftconfig.h changes.
More C++ fixes: Introducing LOCAL_FUNC_X for local functions used in
function pointers (there are no local anonymous functions in C++) and
FT_CPLUSPLUS (instead of FT_EXPORT_VAR) to define linkage of structures
which contain function pointers.
2000-08-03 00:03:08 +00:00
Just van Rossum
4174350526 Added little know adx offset to t1operator_seac() -- accent positioning now seems correct. 2000-08-02 02:44:25 +00:00
Just van Rossum
2fd491d5f3 Fixed Z1_Parse_CharStrings() to work correctly with "open" paths (ie. missing closepath operator) 2000-08-01 23:37:25 +00:00
Just van Rossum
dd81f42282 fixed t1_tofixed() to handle floats of the form .001 and -.001 correctly. 2000-08-01 20:47:48 +00:00
Werner Lemberg
3a89c2a4ac Removing FT_MAKE_OPTION_SINGLE_LIBRARY_OBJECT. It has never worked.
Instead, define BASE_DEF() and BASE_FUNC() similarly to FT_EXPORT_DEF() and
FT_EXPORT_FUNC(), respectively, allowing the programmer to define proper
types and/or export lists for multiple DLLs if necessary (e.g. ftbase.dll --
standalone, fttype1.dll -- needs ftbase.dll, etc.).

The library is finally compiling and linking natively with a C++ compiler!
2000-08-01 17:05:20 +00:00
Werner Lemberg
c713d924d8 Added #ifdef's for C++ to all header files. 2000-08-01 13:17:04 +00:00
Just van Rossum
80a330afe8 fixed two bugs related to T2 real numbers: the "skipping" code didn't behave correctly (leaving a bad stack ptr), and the actual parsing code also parsed the code (30) as two nibbles. 2000-08-01 07:12:31 +00:00
Just van Rossum
7c64409e86 Some simple patches that allow synthetic fonts to be rendered. *However*: although the FontMatrix is read correctly, it does _not_ seem to be used! I don't understand this... 2000-08-01 04:29:25 +00:00
Werner Lemberg
b1dd3535d5 Added autoconf tests FT_MUNMAP_DECL and FT_MUNMAP_PARAM to fix some devils.
Updating unix/ftsystem.c accordingly.

More warning fixes.
2000-07-31 22:51:00 +00:00
Werner Lemberg
e72c9fec17 Simplifying the FIELD_* and FRAME_* macros. Before calling these macros,
you should #define FT_STRUCTURE to the structure which will be filled.

Replaced FT_FIELD_REF with FT_FIELD_SIZE, FT_FIELD_SIZE_DELTA, and
FT_FIELD_OFFSET to make the code more readable; additionally, it should be
more portable because we no longer cast a pointer to an FT_UShort (which
e.g. fails with Sun's C++ compiler) but computes the difference between two
pointers which is guaranteed to work.

Fixing warnings (and C++ errors) while using Sun's latest cc and CC
incarnations.  Most of them are related to variable shadowing.
2000-07-31 18:59:02 +00:00
Werner Lemberg
35ca3426eb Fixing gcc warnings on Solaris. 2000-07-31 12:14:27 +00:00
Werner Lemberg
05c21b8f3d Formatting. 2000-07-29 20:38:19 +00:00
Just van Rossum
e97cb9127d FT_Done_Stream(): do stream->close = 0 after calling stream->close(); this makes it safe to call FT_Done_Stream() more than once.
David: please review this; I hope you agree with this minor change.
2000-07-28 03:13:31 +00:00
Just van Rossum
5fe94ff636 Adapted to new external stream semantics. 2000-07-28 02:25:23 +00:00
David Turner
08d78b62e3 removed warning 2000-07-28 01:51:49 +00:00
Just van Rossum
622f514c3f Obsolete; Mac FOND support now lives in src/base/ftmac.c. 2000-07-28 01:13:29 +00:00
Just van Rossum
9e830c5d3f Put FT_New_Face() in an #ifndef macintosh switch; ftmac.c provides an extended implementation. 2000-07-28 01:12:34 +00:00
Just van Rossum
6012037b2d Removed Mac fond driver #ifdefs 2000-07-28 01:11:20 +00:00
Just van Rossum
ae4bceefa9 Brand new Mac support -- no more muching with changing drivers and reinitializing streams, but a clean layer on top of FT_Open_Face(): an extended version of FT_New_Face(). 2000-07-28 01:10:35 +00:00
Werner Lemberg
58b17f9647 Formatting. 2000-07-27 23:29:08 +00:00
David Turner
c5cdf8bcf1 re-adding a "unix-dev.mk". Debugging libtool output
is just too much of a pain for me, I prefer a good old
static lib without optimizations :-)

"make devel" is back on Unix then..
2000-07-27 21:40:22 +00:00
Werner Lemberg
c703b1bf6d *slight* formatting only. Congratulations, David! :-) 2000-07-27 16:57:35 +00:00
David Turner
666b11d59c small fix to the auto-hinter:
the filling direction of each glyph is now re-computed on the
fly, given that we cannot rely on the "flags" field of the
source outline..

this fixes problems with many fonts, including the Arphic ones
(not to say that CJK fonts are handled better for now though..)
2000-07-27 15:59:08 +00:00
Werner Lemberg
321cd27d0f Removing compiler warnings about unused portions of code.
Now unix.in uses absolute paths also to overcome problems with libtool.
To do that in a consistent way I had to modify the rules how to handle
$OBJ_DIR (and consequently $LIB_DIR): You should set $OBJ_DIR explicitly
on the command line (or environment).
2000-07-27 11:20:20 +00:00
Just van Rossum
1fd410bbe1 now that "type1z" is renamed to "type1"; revert to hardcoding "type1".. 2000-07-26 20:31:18 +00:00
David Turner
5fe4c00ed2 - fixed the incorrect SO extension for Visual C++
- disabled the TrueType interpreter by default
- disabled the "type1" driver, "type1z" is now used
  by default (the internal driver name is "type1" now !!)
2000-07-26 19:04:08 +00:00
Werner Lemberg
c3dd151b0f autohint:
Formatting.

  Replacing many enums with #defines since we do arithmetics (especially
  ORing which would produce undefined enum values). The ideal thing instead
  of #defines is `const int' as provided in C++...

  Adding header files to rules.mk
2000-07-26 14:11:15 +00:00
Werner Lemberg
d082cd6801 formatting 2000-07-25 17:25:32 +00:00
Just van Rossum
1f46fed3a7 Use the "type1z" driver instead of the old one. 2000-07-25 16:40:23 +00:00
Just van Rossum
53fb1f5437 Changed parse_subrs() so that it'll work correctly both with wrongly sorted subr indices *and* non-contiguous subr arrays. Thanks to Tom K. for helping to isolate the problem. 2000-07-25 16:20:57 +00:00
Werner Lemberg
0456354658 `make install' is available now.
Formatting.
2000-07-24 06:01:34 +00:00
Werner Lemberg
db578ae090 Adding $(SO) and $(SA), denoting objects and library for a static build.
This is currently used for Unix only -- it should be extended that it is
possible to build DLLs and static libs on other platforms also.

Formatting.
2000-07-23 21:27:52 +00:00
Just van Rossum
d1ab7f5a4c Hardcode loading the Mac FOND driver here, as config/ftmodule.h sometimes gets regenerated. 2000-07-23 16:23:12 +00:00
Just van Rossum
70e5aa2320 updating the Mac stuff to the current situaton 2000-07-23 16:21:52 +00:00
Werner Lemberg
81991cd203 Fix file inclusion. 2000-07-21 16:43:55 +00:00
Werner Lemberg
d060a75b0d Formatting.
Rudimentary support for autoconf (still using GNU make)

Say `make unix'.
2000-07-20 06:57:41 +00:00
David Turner
c49f69cb8c some welcome fixes related to the auto-hinter:
- removed a stupid memory leak

  - fixed the weird metrics hinting (the horizontal edges were used,
    instead of the vertical one, to compute the metrics adjustments,
    silly, silly, silly).

there is still some bugs that I'm looking at though, but we're
very near the release..
2000-07-20 03:44:50 +00:00
David Turner
bca332875d Boris's patch regarding glyph index 0 2000-07-19 20:17:37 +00:00
David Turner
3469d0d038 added auto-hinter module. Note that the code has been
cleaned up, and it seems a bug was introduced ???

I'll start checking this under Linux, as debugging is a lot
easier under this environment..
2000-07-19 20:02:14 +00:00
David Turner
6930b45f78 - introduced FT_Get_Glyph_Name (see freetype.h)
to access individual glyph names. Changed some
  drivers to support it through a new interface named
  "glyph_name".

- introduced FT_Get_Sfnt_Name (see ftnames.h)
  to access the SFNT name table in a TrueType/OpenType
  file..
2000-07-19 17:13:03 +00:00
Werner Lemberg
a4367e0819 Formatting.
Fixing documentation.

Removing unused configuration macros.
2000-07-19 16:17:55 +00:00
Werner Lemberg
e1bbc017ce Formatting.
Fixing documentation.
2000-07-19 06:25:56 +00:00
Werner Lemberg
c8f9cf37d3 Formatting. 2000-07-19 02:59:31 +00:00
Werner Lemberg
0959a8777a Formatting. 2000-07-18 06:50:03 +00:00
David Turner
2f8f154241 Boris patches for ascender/descender/text height 2000-07-17 22:14:12 +00:00
Werner Lemberg
5aa646c565 Formatting.
Fixing a bug in FT_Get_Kerning().

Moving FT_Get_Module_Interface() to ftoutln.c.
2000-07-14 06:16:47 +00:00
David Turner
8cfcf6e057 more patches from Tom (to fix its former patches :-) 2000-07-13 00:21:51 +00:00
David Turner
49bd4f054a removed some warnings with Visual C++
that prevented compilation
2000-07-12 16:57:37 +00:00
Werner Lemberg
2405d14f77 Formatting/Synchronizing.
Updating OS/2 bits in ttnameid.h to latest version (as posted on the
opentype@ list).
2000-07-11 06:12:20 +00:00
David Turner
e161ee449c fixed a bug that caused invalid clipping of monochrome bitmaps
when they were blitted on the left edge of an 8-bit pixmap..
2000-07-10 22:03:10 +00:00
Werner Lemberg
93ac3e3985 Formatting.
Synchronizing docs.
2000-07-10 21:41:32 +00:00
David Turner
e208f4e020 fixed a really tupid bug in the Multiple Master support
of "type1z"
2000-07-10 20:30:59 +00:00
Werner Lemberg
97b2de5898 More formatting.
Synchronizing docu in include/freetype with src/base.
2000-07-10 00:06:22 +00:00
Werner Lemberg
b48a6094b2 Formatting.
Moving some internal structures and constants from freetype.h to ftobjs.h.

Finally removing FT_LOAD_ANTI_ALIAS.

Cleaning up all error codes.  Only the used ones have survived :-)

Removed unused FT_MAX_GLYPH_FORMATS constant.

T2 error codes are now in the range 0x500-0x5FF (instead of `TrueDoc').

Some minor improvements of error return values.

Finally fixing error code values in ftraster and ftgrays to be compliant
with all other FT error codes.
2000-07-09 19:15:30 +00:00
Werner Lemberg
681e8eea5f formatting
fixing minor `make multi' problem
2000-07-09 00:48:37 +00:00
Werner Lemberg
415cc7c905 Formatting.
Adding proper trace level.
2000-07-08 22:52:21 +00:00
Werner Lemberg
7fa51b5535 Formatting.
Adding some trivial error checking.

Adding/Fixing tracing levels.
2000-07-08 19:51:42 +00:00
David Turner
e1075ceabb the font driver now supports CEF fonts and needs a few
more work to fully support pure CFF fonts..

yet another patch inspired by Tom !! Aaaaa :-)
2000-07-08 02:07:27 +00:00
David Turner
9eeea990cc fixes from Tom related to 64-bitness and strange
compiler behaviour on DEC Unix

also preliminary support for CEF fonts. I can
see the glyphs in "ftview" but need to complete
the Unicode charmap support..
2000-07-08 01:49:28 +00:00
David Turner
52b430abea fixed a rather stupid bug in the last patch (one of those with
dire consequences..)
2000-07-08 01:18:38 +00:00
David Turner
a90663f591 vast clean-up of the sources in order to allow flat
directory compilation (by defining the FT_FLAT_COMPILE
macro at compile time..)

moved "freetype2/BUILD" to "freetype2/docs/BUILD"
2000-07-08 00:41:13 +00:00
David Turner
62952153fe removed a compiler warning.. 2000-07-07 20:14:22 +00:00
David Turner
9b3d1c75ad - fixed a leak in the Type 1 driver
- updated the CFF driver to support flex opcodes
2000-07-07 19:47:34 +00:00
David Turner
607358967f removed obsolete files.. 2000-07-07 19:46:30 +00:00
David Turner
ab9cc277c2 added Windows FNT/FON font driver 2000-07-07 19:46:01 +00:00
David Turner
43a2f656a7 fixed a few bugs, cleaned up some code 2000-07-05 18:23:38 +00:00
Werner Lemberg
bd5ae40006 Run g++ on the FreeType library. This should make the use of code in
C++ programs easier:

  Renamed FT_WordXX to FT_UIntXX.

  Changed a lot of void* to FT_Byte* if related to i/o streams -- FreeType
  always accesses streams byte-wise, so this makes sense IMHO.

  Added a lot of #ifdef __cplusplus to header files (and removed a few).

  Other minor syntax fixes (mostly casts).

  Replaced the variable `private' with `private_dict' -- `private' is
  reserved in C++.
2000-07-05 04:32:02 +00:00
David Turner
c6a92202c2 various clean-ups:
- using FT_UNUSED instead of UNUSED
- using FT_LONG64 and FT_INT64 instead of LONG64 & INT64
- using FT_SIZEOF_INT & FT_SIZEOF_LONG instead of...

- removed the #ifdefs that used SIZEOF_INT, instead we now
  use FT_Int32 and FT_UInt32 when needed to support
  32-bits quantity correctly on 64-bits systems..
2000-07-04 18:12:13 +00:00
Werner Lemberg
aa8c7da0bf Don't use -lefence in the demo Makefile.
Added C++ guards in ftmodule.h

Fix error check in ftglyph.c

Formatting; adding copyrights; fixing documentation
2000-07-04 03:37:18 +00:00
Werner Lemberg
d0c36e3b5a Formatting; fixing documentation. 2000-07-03 16:45:15 +00:00
David Turner
d18388e44b fixed a few 64-bit related bugs in "sfnt/ttload.c" and
"base/ftstream.c"

Note that "TT_PCLT" was incorrectly defined in
<freetype/tttables.h>
2000-07-03 15:00:49 +00:00
Werner Lemberg
768c9561f6 Formatting. Fixing some tracing messages. 2000-07-03 07:09:09 +00:00
Werner Lemberg
5811c7c3a5 Formatting.
Fixed some errors which prevented compiling.
2000-07-02 13:53:16 +00:00
Werner Lemberg
fbeb41d93d Formatting.
Adding copyright notices.

Removing an unnecessary file (smooth.h).
2000-07-02 00:27:53 +00:00
David Turner
e0bba32291 fixed the PSNames -> Unicode translation table
the Python script "glnames.py" was buggy and
lacked quite a few values in the "names_to_unicode"
table !!
2000-07-01 19:33:40 +00:00
Werner Lemberg
798e70e44c Removing. 2000-07-01 14:09:27 +00:00
Werner Lemberg
11735fe317 A small fix from Tom. 2000-07-01 14:08:31 +00:00
Werner Lemberg
a8bbc267a2 Formatting as usual...
Adding trivial argument checking to some functions.

Added dynamic driver interface to cidriver.

Minor `version' fixes for macfont and psnames modules.

Removed unnecessary files
2000-07-01 14:06:46 +00:00
David Turner
f9ca2bb58a managed to re-design entirely the API in <freetype/ftglyph.h>
It is now really the "glyph factory" that Stefan was probably
dreaming about..

fixed some recent formatting errors from Werner ;-)

cleaned up the demonstration programs from most of the
rust that they had, though I'm sure someone is going to
re-format them really soon !!

"ftstring" now uses the new ftglyph.h API, and is now
faster and smaller.. yep..
2000-06-30 23:12:55 +00:00
Werner Lemberg
ac39ecdca8 Formatting...
Fixing incorrect scaling of vertical advance width.
2000-06-30 22:24:36 +00:00
Werner Lemberg
cc9fc49c90 Formatting...
Applying some fixes from Tom.
2000-06-30 06:21:26 +00:00
David Turner
5ae831c101 changes used to implement the auto-hinting support 2000-06-30 01:31:22 +00:00
David Turner
32b85e67cb various bug fixes in the postscript font drivers (mainly they
added one un-necessary point to each contour..)
2000-06-29 21:48:58 +00:00
David Turner
60402683ba small fix in the definition of the convenience functions 2000-06-29 06:19:07 +00:00
Werner Lemberg
deb4e98396 Formatting...
Preprocessor lines now always start the line.

Improved error handling in `base' module.

Fixed a out-of-bounds error in ttgload.
2000-06-29 03:14:25 +00:00
David Turner
98258619df debugged the CFF driver. The "advance width" problem
was strictly unrelated to our previous worries, it was a
really simple bug in t2gload.c !!
2000-06-28 20:43:07 +00:00
David Turner
075cdf1288 fixed a _nasty_ bug in the CFF driver. Note that there are still escapement problems though.. 2000-06-28 05:35:58 +00:00
David Turner
98c2fde0b3 removed obsolete files... :-( 2000-06-28 04:31:24 +00:00
David Turner
81bb4ad937 latest clean-ups..
The code compiles with NO WARNINGS with GCC and
Visual C++ (also with LCC minus debugging options)
2000-06-28 04:19:49 +00:00
David Turner
9d636b6d14 various cleanups to reduce compiler warnings
+ support for CID-keyed fonts in the CFF driver
(still some unexpected bugs though..)
2000-06-27 23:32:27 +00:00
David Turner
74abee8e2e various cleanups to reduce compiler warnings 2000-06-27 23:31:53 +00:00
David Turner
7ed5a057cf small bugfix 2000-06-27 23:23:22 +00:00
David Turner
385bedb832 formatting 2000-06-27 23:22:49 +00:00
David Turner
728da1c863 changed file names and some functions names to avoid
conflicts with the "type1" driver.
2000-06-27 23:21:51 +00:00
David Turner
a1be2dcee3 cleaned up source code to avoid function name
conflicts with Type 1 driver(s)
2000-06-27 23:20:35 +00:00
David Turner
5ae1bad3f6 added new renderer module 2000-06-27 23:18:39 +00:00
Werner Lemberg
d7a046838f More formatting.
About previous commitment: Added latest versions of (still unused)
config.guess and config.sub files.
2000-06-25 23:02:11 +00:00
Werner Lemberg
dcd2e14c58 forgotten fixes. 2000-06-25 07:43:15 +00:00
Werner Lemberg
a929ba9b20 applying formatting again 2000-06-25 06:47:11 +00:00
David Turner
994d7747fb various hacks to the TrueType driver that I cannot
explain now, but they'll be very useful in the near future :-)
2000-06-25 04:49:19 +00:00
David Turner
2a98b3c431 reduced some nasty memory leaks 2000-06-23 13:47:55 +00:00
David Turner
90f68b7272 still more updates to the TrueType driver to make it more
"extensible"..
2000-06-23 12:26:14 +00:00
David Turner
c31286153a bugfixes in the Type1 drivers 2000-06-23 05:02:13 +00:00
Pavel Kaňkovský
5b58f5e374 fixed *top++ bug present in type1/t1gload.c as well 2000-06-23 04:19:36 +00:00
Pavel Kaňkovský
7802d4664d *top++-bug was not a compiler bug, therefore the comment about the
affected compiler was misleading and has been removed
2000-06-23 04:18:55 +00:00
David Turner
d0079e669e improved the Type1 drivers to deal with the case where
the lenIV field is set to -1 to indicate unencoded charstrings

fixed some source code to prevent a compiler bug on IRIX

fixed the module version's in the "type1z" driver
2000-06-23 00:07:06 +00:00
David Turner
910c597d1a updated for new design 2000-06-22 00:31:01 +00:00
David Turner
aa4c28f9fe added new files 2000-06-22 00:27:15 +00:00
David Turner
206297435e small bugfix 2000-06-22 00:26:21 +00:00
David Turner
e82a82af6d small bugfix in the "seac" code 2000-06-22 00:26:11 +00:00
David Turner
f0df85ba2a - MAJOR INTERNAL REDESIGN:
A lot of internal modifications have been performed lately on the
    source in order to provide the following enhancements:

      - more generic module support:

        The FT_Module type is now defined to represent a handle to a given
        module. The file <freetype/ftmodule.h> contains the FT_Module_Class
        definition, as well as the module-loading public API

        The FT_Driver type is still defined, and still represents a pointer
        to a font driver. Note that FT_Add_Driver is replaced by FT_Add_Module,
        FT_Get_Driver by FT_Get_Module, etc..


      - support for generic glyph image types:

        The FT_Renderer type is a pointer to a module used to perform various
        operations on glyph image.

        Each renderer is capable of handling images in a single format
        (e.g. ft_glyph_format_outline). Its functions are used to:

           - transform an glyph image
           - render a glyph image into a bitmap
           - return the control box (dimensions) of a given glyph image


        The scan converters "ftraster.c" and "ftgrays.c" have been moved
        to the new directory "src/renderer", and are used to provide two
        default renderer modules.

        One corresponds to the "standard" scan-converter, the other to the
        "smooth" one.

        The current renderer can be set through the new function
        FT_Set_Renderer.

        The old raster-related function FT_Set_Raster, FT_Get_Raster and
        FT_Set_Raster_Mode have now disappeared, in favor of the new:

           FT_Get_Renderer
           FT_Set_Renderer

        see the file <freetype/ftrender.h> for more details..

        These changes were necessary to properly support different scalable
        formats in the future, like bi-color glyphs, etc..


      - glyph loader object:

        A new internal object, called a 'glyph loader' has been introduced
        in the base layer. It is used by all scalable format font drivers
        to load glyphs and composites.

        This object has been created to reduce the code size of each driver,
        as each one of them basically re-implemented its functionality.

        See <freetype/internal/ftobjs.h> and the FT_GlyphLoader type for
        more information..



      - FT_GlyphSlot had new fields:

        In order to support extended features (see below), the FT_GlyphSlot
        structure has a few new fields:

           linearHoriAdvance:  this field gives the linearly scaled (i.e.
                               scaled but unhinted) advance width for the glyph,
                               expressed as a 16.16 fixed pixel value. This
                               is useful to perform WYSIWYG text.

           linearVertAdvance:  this field gives the linearly scaled advance
                               height for the glyph (relevant in vertical glyph
                               layouts only). This is useful to perform
                               WYSIWYG text.

        Note that the two above field replace the removed "metrics2" field
        in the glyph slot.

           advance:   this field is a vector that gives the transformed
                      advance for the glyph. By default, it corresponds
                      to the advance width, unless FT_LOAD_VERTICAL_LAYOUT
                      was specified when calling FT_Load_Glyph or FT_Load_Char

           bitmap_left: this field gives the distance in integer pixels from
                        the current pen position to the left-most pixel of
                        a glyph image WHEN IT IS A BITMAP. It is only valid
                        when the "format" field is set to
                        "ft_glyph_format_bitmap", for example, after calling
                        the new function FT_Render_Glyph.

           bitmap_top:  this field gives the distance in integer pixels from
                        the current pen position (located on the baseline) to
                        the top-most pixel of the glyph image WHEN IT IS A
                        BITMAP. Positive values correspond to upwards Y.

           loader:  this is a new private field for the glyph slot. Client
                    applications should not touch it..


      - support for transforms and direct rendering in FT_Load_Glyph:

        Most of the functionality found in <freetype/ftglyph.h> has been
        moved to the core library. Hence, the following:

          - a transform can be specified for a face through FT_Set_Transform.
            this transform is applied by FT_Load_Glyph to scalable glyph images
            (i.e. NOT TO BITMAPS) before the function returns, unless the
            bit flag FT_LOAD_IGNORE_TRANSFORM was set in the load flags..


          - once a glyph image has been loaded, it can be directly converted to
            a bitmap by using the new FT_Render_Glyph function. Note that this
            function takes the glyph image from the glyph slot, and converts
            it to a bitmap whose properties are returned in "face.glyph.bitmap",
            "face.glyph.bitmap_left" and "face.glyph.bitmap_top". The original
            native image might be lost after the conversion.


          - when using the new bit flag FT_LOAD_RENDER, the FT_Load_Glyph
            and FT_Load_Char functions will call FT_Render_Glyph automatically
            when needed.
2000-06-22 00:17:42 +00:00
Werner Lemberg
9ca2af3838 A new formatting orgy.
Added some `#if 0' to completely disable the CID AFM stuff.  In case this is
not correct please fix.
2000-06-21 03:03:28 +00:00
Werner Lemberg
9c05268eae Newly generated. 2000-06-17 20:15:53 +00:00
Werner Lemberg
100d6d47d8 Fixing glyph name typos in glnames.py; more formatting. 2000-06-17 20:15:06 +00:00
David Turner
f9b8dec437 major reformatting of the modules source code in order to get
rid of most of the basic types redefinitions (i.e. FT_Int instead
of "FT_Int", etc..)

The format-specific prefixs like "TT_", "T1_", "T2_" & 'CID_"
are now only used in relevant structures..

fixed Werner's fix to t2gload.c :-)
other small bug fixes
2000-06-16 19:34:52 +00:00
Werner Lemberg
e3c11d7f00 A new round of formatting, adding/fixing documentation etc. 2000-06-16 06:49:56 +00:00
Werner Lemberg
67d301f305 Fixed the PACK() macro. 2000-06-14 04:13:59 +00:00
Werner Lemberg
7a4fda8821 The next round of formatting, checking documentation, etc. 2000-06-13 23:21:00 +00:00
Werner Lemberg
78575dc0d1 A lot of formatting.
Added more tracing levels.

More Makefile fixes.

Minor other changes.
2000-06-12 19:36:41 +00:00
Werner Lemberg
e35cac66c6 A complete revision of FreeType 2's GNU makefiles (of the library):
Tons of unnecessary stuff have been removed; only the essential rules
  have been retained.

  The source files now depend on all header files in include/freetype,
  include/freetype/config, and include/freetype/internal.  This is not
  optimal, I know, and I'll try to improve this, but it is better than
  before (namely no dependencies on `internal').

  FTDEBUG_SRC has been added (similar to FTSYS_SRC) -- I don't know
  exactly whether this is really useful, but it doesn't harm.

  There is now more documentation in the makefiles itself.

io-frames.html: Use of <th>, <code>, and <var> for better tagging.

Reactivating of FT_DEBUG_LEVEL_xxx macros.

Added a lot of #include directives to make `multi' builds possible -- note
that currently the modules cid, t1, and t1z have clashing structures and
functions which means that you can only use one of these three modules for a
multi build.

Added some missing function declarations to (local) header files.

Renamed some T1_Open_Face() to CID_Open_Face() in the cid module -- a lot
of other functions should be renamed also...

Replaced many FT_xxx stuff with T1_xxx in t1z driver -- this isn't finished
yet...

Fixed FT_Free() to allow a NULL pointer without an assertion (this has
always been a valid assumption in FreeType, at least in FT 1.x).

A lot of other, minor fixes (mostly documentation).
2000-06-11 03:46:57 +00:00
Werner Lemberg
cb9109fc40 Applied Tom's patches to improve CFF handling. 2000-06-09 05:25:19 +00:00
David Turner
3d99f79669 finally fixed that crazy Type 1 hinter..
it still sucks though .. ;-)
2000-06-07 23:06:10 +00:00
David Turner
24aaddaeed removed invalid #include 2000-06-07 20:19:21 +00:00
David Turner
6cef627d17 added code to correctly scale global metrics 2000-06-07 20:06:54 +00:00
David Turner
b770a4ab6d bug fix, suggested by Tor Lillqvist 2000-06-07 20:06:18 +00:00
David Turner
de6523ee05 Added code to correctly scale global metrics 2000-06-07 20:05:50 +00:00
David Turner
0f991b4312 new version of the CFF driver, this one works :-) 2000-06-07 20:04:34 +00:00
Werner Lemberg
e1d5dd78f4 Moved all *errors.h header files to include/freetype/internal for
consistency.

Removed unused error message.
2000-06-07 04:48:12 +00:00
Werner Lemberg
61bd4b9dd1 Added FT_FRAME_SKIP_xxx to skip fields.
More use of READ_Fields() in ttsbit.c

Other minor fixes.
2000-06-07 00:00:08 +00:00
Werner Lemberg
1c0d4acb25 Fine-tuned a lot of tracing levels to make them more functional with ftview.
Added a lot of \n to tracing messages.

Fixed a serious bug in loading SBit offsets (missing parentheses around a
xxx ? yyy : zzz construct).

Replaced most GET_xxx() functions with calls to READ_Frame() in ttsbit.c
2000-06-06 20:41:48 +00:00
Werner Lemberg
920d41e038 Removing trailing whitespace. 2000-06-05 14:32:32 +00:00
Werner Lemberg
4e6dd8587e freetype.h: Adding ft_encoding_xxx values for some CJK encodings.
Fixing copyright notice on many files.

Changed some tracing levels.

A lot of formatting, fixing documentation etc. as usual.
2000-06-05 05:26:15 +00:00
Werner Lemberg
5617726108 ftview now has two new options: -d activates debugging, and -l sets the
trace level.

Since FT2 is still beta, I've activated the FT_DEBUG_xxx macros by default.

To make reasonable output, I've changed some TRACEx macros to other levels.
2000-06-03 21:59:44 +00:00
Werner Lemberg
eb81e37825 More preparation for tracing. Formatting. 2000-06-03 06:03:11 +00:00
Werner Lemberg
9a754ce32b Formatting; adding some tracing code. 2000-06-02 21:31:32 +00:00
Werner Lemberg
91e52d416a Finishing first formatting/documenting etc. of the `base' dir. Some modules
are still badly documented, though...
2000-06-02 14:30:38 +00:00
Werner Lemberg
08edde5805 Correct wrong fix. 2000-06-02 00:11:57 +00:00
Werner Lemberg
2fbf7e439f Added a lot of error checking code to the exported functions in the `base'
subdir (not complete yet).
2000-06-02 00:01:14 +00:00
Werner Lemberg
d66ea312f6 FT_Outline_Decompose() now returns FT_Error.
Minor bug fixes.

More formatting, adding/fixing documentation.
2000-06-01 15:49:28 +00:00
David Turner
6b0bf34665 slight change to the smooth renderer to make it compile
stand alone with the _STANDALONE_ macro defined..
See comments inside it "src/base/ftgrays.c"
2000-06-01 05:01:01 +00:00
David Turner
b3936a1600 small bug fix from Robert :-) 2000-06-01 04:44:36 +00:00
David Turner
04aa800ce9 added a CID-keyed font driver in "src/cid"
fixed two bugs in the smooth renderer
2000-06-01 03:27:48 +00:00
David Turner
3581d06464 changed the SFNT format check to make it less strict.
A certain number of TrueType fonts have invalid values
in the SFNT header..
2000-06-01 03:26:58 +00:00
Werner Lemberg
a3b6c6c290 Formatting, fixing and adding documentation. 2000-05-31 06:55:12 +00:00
Werner Lemberg
0c8cde2e05 ftgrays.c: Formatting. It seems to me that _STANDALONE_ doesn't work yet...
Will it ever work?  If not, the unused code should be removed.

ftconfig.h, ftobjs.h: Fix my last fix of the UNUSED() macro.
2000-05-30 20:10:06 +00:00
Werner Lemberg
f13e6333f9 Formatting; minor improvements. 2000-05-30 16:49:14 +00:00
Werner Lemberg
026bd17b41 ftmulti.c: Will now accept any filename. It will no longer append `.ttf'
or `.ttc'.  Reformatted.

ftcalc.c, ftdebug.c: Minor formatting stuff.
2000-05-30 05:13:30 +00:00
David Turner
5b401bb918 additional changes to the CFF/Type2 driver 2000-05-29 23:03:15 +00:00
Werner Lemberg
c3c344c76e Fixing the fixes :-) More formatting. 2000-05-29 22:40:57 +00:00
David Turner
4f99c3c423 fixed divide by zero bug
added CFF/OpenType driver source (not working for now)
2000-05-29 20:55:13 +00:00
Werner Lemberg
a519b3b7a3 Formatting, fixing descriptions. 2000-05-29 20:46:12 +00:00
David Turner
b1677a87ca changed the SFNT driver slightly to add more robust
checking based on the "search_rang", etc.., fields of
the sfnt header..

This avoids problems (like certain Type 1 multiple masters
incorrectly recognized as trueType files)..
2000-05-29 20:37:41 +00:00
David Turner
241e151eb2 oops, forgot to commit these files 2000-05-28 17:15:37 +00:00
David Turner
2e421319fc moved a lot of things from the TrueType driver to the SFNT
module (whose interface has changed, by the way)

This allows even more code re-use between TrueType and
OpenType formats..
2000-05-26 22:13:17 +00:00
David Turner
2c5f482b48 removed obsolete files 2000-05-26 22:10:08 +00:00
David Turner
5413644b5e added a new demonstration program called "ftmulti" to
demonstrate the multiple masters support

fixed a few bugs
2000-05-26 17:52:06 +00:00
David Turner
1118720679 finalised the multiple masters support
fixed some nasty little bugs too
2000-05-26 17:13:23 +00:00
David Turner
fea68c6800 fixed two minor bugs:
- the glyph index was not checked in FT_Load_Glyph
  - the "type1" driver didn't read the FontBBox and FontMatrix
    correctly..
2000-05-26 06:40:49 +00:00
David Turner
936d2e072b a small change to allow the "type1" driver to detect
multiple master fonts and return an error code that allows
the "type1z" driver to load them after..
2000-05-26 02:16:06 +00:00
David Turner
7c388ba491 added support for multiple master fonts in "type1z". It is
now working, but there is no way currently to change the default
weight vector (tested with custom vectors though).

Note that you should remove the "type1" driver from the
module list to be able to test it..
2000-05-26 02:07:40 +00:00
David Turner
1c9a1cab3f important modifications to the Type1z driver
these are used to prepare for multiple master fonts
2000-05-24 21:12:02 +00:00
David Turner
1fb6eea7d1 EXPORT_DEF renamed to FT_EXPORT_DEF +
reformating/spacing
2000-05-24 00:31:14 +00:00
David Turner
f5dcdd5cfb minor fix to the Type1 driver(s) to apply the font matrix when
necessary..
2000-05-23 22:16:27 +00:00
David Turner
5e4c2cb3bf fixed some header files inclusions
added C++ stubs to public header files
2000-05-22 16:25:14 +00:00
David Turner
51179f0ae3 some fixes for 64-bit systems. Mainly changed some
FT_TRACE calls to use %p instead of %lx when dumping
a pointer address
2000-05-18 16:18:05 +00:00
David Turner
109fcf6086 fixed the sbit loader (src/base/sfnt/ttsbit.c)
introduced a new load flag (FT_LOAD_CROP_BITMAP) used
to indicate that we want embedded bitmaps to be cropped..

Thanks a lot to Yamano-uchi, Hidetoshi
2000-05-17 23:35:37 +00:00
David Turner
3475e7fba3 removed TT_MAX_SUBGLYPHS macro, there is no static
limit on the number of subglyphs in a TrueType font..

changed the default number of gray levels used by the
smooth renderer to 256 (instead of 128). Of course, the
human eye can't tell a difference ;-)
2000-05-17 20:56:01 +00:00
David Turner
e49ab25c08 formatting - removed trailing spaces 2000-05-16 23:44:38 +00:00
David Turner
ea44d5ec3d formatting 2000-05-16 23:22:41 +00:00
David Turner
701d754665 removed obsolete header file 2000-05-16 23:21:59 +00:00
David Turner
414f38c572 at last, fixed the bug, and re-enabled 5-gray levels support
for backwards compatibility..
2000-05-16 22:37:30 +00:00
David Turner
0a29c6979d implemented FT_Select_Charmap and FT_Set_Charmap
(at last :-)
2000-05-12 17:09:38 +00:00
David Turner
c60c61c684 fixed a potential memory leak when loading embedded bitmaps 2000-05-12 15:26:58 +00:00
David Turner
c30aea9846 another massive changes in order to completely avoid
compiler warnings with GCC + "-ansi -pedantic -Wall -W"
and LCC.

Also fixed the compilation of "type1z" with Win32-LCC
(its pre-processor is broken !!)

Updated the BUILD document too
2000-05-12 15:01:18 +00:00
David Turner
bfe2f98f1f a new massive grunt work. Redefined the EXPORT_DEF,
EXPORT_FUNC, BASE_DEF and BASE_FUNC macros to
let them take an argument..

This is needed to compile the library as a DLL on some platforms
that have different compiler conventions..
2000-05-12 12:17:15 +00:00
David Turner
4f2c5544bb additional changes, this time in order to pass extra parameters
to font drivers when creating a new face object.

The FT_Open_Args structure has been changed to simplify
its use and allow generic parameters too..
2000-05-12 10:19:41 +00:00
David Turner
2561b24537 I knew the first CVS commit wouldn't be good :o)
Here, the build system seems to be cured now..
(I'll need to try it on Unix too though..)
2000-05-11 18:47:39 +00:00
David Turner
efce08d67c major re-organisation of the FreeType 2 directory hierarchy 2000-05-11 18:23:52 +00:00
David Turner
5d6b82d9c9 formatting 2000-05-09 22:08:52 +00:00
David Turner
f382328131 added experimental emboldening/outlining code. This
is incomplete and will not compile so turned off
2000-05-05 13:11:36 +00:00
David Turner
4d3e56392f closed most of the memory leaks in the Type 1 driver(s)
this is required before any serious work to implement
multiple masters
2000-05-05 12:33:23 +00:00
David Turner
c1205799f5 changes the type of the "mode" parameter in FT_Set_Raster_Mode
to unsigned long (easier than string to compare)
2000-05-05 01:38:46 +00:00
David Turner
81d02dbc04 finally a auto-hinter module interface I'm satisfied with,
it's now time to change other font drivers to take advantage
of it :-)
2000-05-05 01:37:32 +00:00
David Turner
d50941dc8c fixed a compilation problem that occurred with the
LCC C pre-processor. really minor
2000-05-05 01:36:56 +00:00
David Turner
c136b409eb an update to FT_Outline_Funcs used to improve
the accuracy of outline decomposition
2000-05-04 17:24:54 +00:00
David Turner
d186a361a1 various updates to reduce the compilation warnings 2000-05-02 17:41:41 +00:00
David Turner
1119baee54 added support for version 2 of the OS/2 table
five additional fields (see OT Spec 1.2)
2000-05-02 11:01:49 +00:00
David Turner
b7ef2b0968 in order to ensure that the bytecode interpretation is exactly
equivalent to the one in FT 1.4, moved some code from the
old version of FreeType in order to compute vector normalization
a bit differently
2000-05-02 11:01:12 +00:00
David Turner
48641d60ae added a simple line to set "glyph.control_len" when loading
a simple glyph. This is used to compute statistics on font files..
2000-05-02 11:00:06 +00:00
David Turner
9a9315faae changes to reflect the new files
include/tttables.h
  include/t1tables.h
2000-05-02 10:59:01 +00:00
David Turner
488cd71e4b a few updates to the OpenType Layout code
still far to go, but I'll dedicate most of my time on
it next week
2000-05-02 10:54:12 +00:00
David Turner
e608a3e0d2 moved the smooth renderer to the base layer directory
it is compiled as a separate object, and its interface is
available in "include/ftgrays.h"
2000-05-02 10:53:11 +00:00
David Turner
271106133a added FT_Sqrt64 to ensure that all bytecode operations are
strictly equivalent to the ones in FT 1.4 when compiling with
the configuration macro FT_CONFIG_OPTION_OLD_CALCS
defined..
2000-05-02 10:52:28 +00:00
David Turner
a8bcdf8ef6 added FT_Done_Stream 2000-05-02 10:51:41 +00:00
David Turner
68ebd1bee4 typo 2000-05-02 10:51:22 +00:00
David Turner
33ec7d473b removed an over-zealous assertation that halted the engine
with a few weird fonts.
2000-05-02 10:51:04 +00:00
David Turner
61492029a5 added macros to read little endian words from a byte stream
(e.g. NEXT_ShortLE(buffer))
2000-05-02 10:50:18 +00:00
David Turner
f8a116fb93 implemented extra interface for "FT_Get_Sfnt_Table" 2000-04-25 16:11:12 +00:00
David Turner
99a4d93b2d added FT_Get_Sfnt_Table from "include/tttables.h" 2000-04-25 16:10:50 +00:00
David Turner
2dbc54dd13 typo 2000-04-25 16:10:14 +00:00
David Turner
8ce47b1da6 added new auto-hinter driver interface !
modified tttypes.h to use the new "include/tttables.h"
2000-04-25 16:09:55 +00:00
David Turner
d8723b4fb2 fixed another small bug. The metrics were not computed
correctly..
2000-04-14 11:29:14 +00:00
David Turner
1216e434cc fixed a small bug that prevented the loading of certain
fonts that use the DOS linefeed convention.., including
the newest XFree86 4.0 B&H Type 1 fonts !!
2000-04-14 11:22:17 +00:00
David Turner
90a36c5522 a small improvement to the Type 1 hinter, that
comes from research with the auto-hinter. Nothing
fancy but gets rid of the un-normalized widths :-)
2000-04-04 18:21:45 +00:00
David Turner
82942cc279 simple fix required by the auto-hinting module
(sets the ft_outline_reverse_fill bit_flag)
2000-03-30 08:43:03 +00:00
Just van Rossum
3562d014e6 minor improvements, mainly to the PFB testing code... 2000-03-28 19:41:56 +00:00
David Turner
37379e2170 major changes to the library:
- there is now a "convenience" API to manage glyphs in
   "include/ftglyph.h". See the demo program "ftstring" for
   an example..

  - the raster interface has been changed in order to allow
    direct composition through user-provided callbacks. This
    has been tested but isn't demonstrated for now in "demos"

 - the FT_LOAD_NO_RECURSE flag is supported, as this is
   required by some new code in the auto-hinting engine

 - some bug fixed in FT_MulFix which made FT_xxx_Transform
   return incorrect results..
2000-03-28 11:22:31 +00:00
David Turner
ed7f62aca5 support for FT_LOAD_NO_RECURSE needed by the auto-hinter 2000-03-28 11:19:28 +00:00
David Turner
7024ca1a37 ftoutln.c is now mandatory. The optional parts of this
component can be disabled with the config macro
FT_CONFIG_OPTION_NO_CONVENIENCE_FUNCS
2000-03-28 11:18:39 +00:00
David Turner
e01a41d5eb fixed a stupid bug in FT_MulFix 2000-03-28 11:17:58 +00:00
David Turner
14d340ce2e fixed a _really_ stupid bugs in the TrueType Collection
loading !!
2000-03-17 23:33:07 +00:00
Just van Rossum
5a34a7bac2 use stream->memory instead of malloc/free. 2000-03-17 13:07:21 +00:00
Just van Rossum
65a60dc12e Here's the Mac FOND driver! It seems to work well, but it turns out the Type 1 drivers (old as well as new) reject about half the fonts I have. 2000-03-17 11:53:17 +00:00
Just van Rossum
5ae477c4f2 Added prototype for T1_Done_Parser() 2000-03-17 11:51:33 +00:00
David Turner
a6415244f1 updated documentation for Beta 4 2000-03-13 14:25:00 +00:00
David Turner
c3c7e7fb0c updated CHANGES
added BUILD & INSTALL
2000-03-13 14:19:31 +00:00
David Turner
757429fdc9 fix to get rid of compile warning 2000-03-13 13:02:57 +00:00
David Turner
7f7aadf4f7 finished moving all configuration macros to
"config/ftoption.h"
2000-03-13 12:57:27 +00:00
David Turner
3246efedcd first step towards moving all configuration options
to the single "config/ftoption.h"
2000-03-13 12:12:46 +00:00
David Turner
06d508c1de removed the unused/obsolete "ftbbox.c" 2000-03-13 11:52:44 +00:00
David Turner
4258c4fe9f removed src/shared/ttnameid.h (redundant) 2000-03-13 11:50:38 +00:00
David Turner
7f615aef5e renamed all outlines functions to the
FT_Outline_<action> syntax..
2000-03-13 11:49:20 +00:00
David Turner
41dbcbf628 reformatting, changing the FT_Outline structure:
- "flags" have been renamed to "tags"
  - "outline_flags" have been renamed to "flags"

Look for more re-formatting today..
2000-03-09 11:46:25 +00:00
David Turner
e98e4af73c fixed a nasty bug that occured with CMAP format 4.. 2000-03-06 17:01:07 +00:00
David Turner
0f99ddda5f changed the structure of FT_Outline in order to pack
all outline flags in a single integer..

Changed the rest of the library and demo programs
accordingly..
2000-03-06 13:23:32 +00:00
David Turner
9d76a8d67a a few fixes to get rid of unwanted compile-time warnings 2000-03-06 09:51:19 +00:00
Just van Rossum
80f4b060e3 fixed typo in comment 2000-03-05 16:10:10 +00:00
Just van Rossum
7eef5364b8 - ft_new_input_stream: don't make a new copy of the pathname
- ft_done_stream: remove the FREE(pathname) call, which wasn't
  kosher
- FT_Open_Face: after calling open_face, don't assume driver is
  the same as face->driver, use face->driver instead
2000-03-05 16:07:58 +00:00
Just van Rossum
59d8ac4615 formatting: some tabs replaced by spaces 2000-03-05 15:59:09 +00:00
Werner Lemberg
febe3fbeba A first check of FT2's Make system. Many smaller and larger bugs have been
fixed:

. Removing unused variables.

. detect.mk files now must provide $(CONFIG_FILE) and not $(CONFIG_RULE).

. ansi.mk will now be really used as a fallback if the detect mechanism
  fails.

. ANSIFLAGS will now be really used (fixing a typo).

. `make clean' now works (again two typos).

. Detection of gcc on Unix has been fixed (using the `-v' option instead of
  `--version').

. `make devel' now works (on Unix).

. Fixing *again* a bug in demos/graph/x11/rules.mk to allow multiple use
  of `-L' compiler options.

. $(BASE_H) now contains a few more header files.

As usual, a lot of formatting (not finished yet).
2000-03-05 01:14:19 +00:00
Just van Rossum
8c5c932e46 fixed typo in comment 2000-03-02 10:53:32 +00:00
Just van Rossum
1e5754f2d6 added missing "else": without it FT_Open_Face() would still scan the list of drivers when specifying an explicit driver 2000-03-02 10:52:57 +00:00
Just van Rossum
d35aea7090 ft_new_input_stream(): set the pathname field of the stream to args->pathname. Needed for the Mac fond driver.
ft_done_stream(): free the pathname field, if not null
2000-03-02 01:07:50 +00:00
David Turner
ca13392d83 a few changes to really compile font drivers in
independent single objects..
2000-03-01 13:24:38 +00:00
David Turner
e595014a64 simple minor fix in t1afm.h/t1afm.c 2000-02-29 17:14:02 +00:00
David Turner
e755002ddc moved the ANSI "ftsystem.c" to src/base 2000-02-29 17:11:53 +00:00
David Turner
9c84887db3 remaining fixes from Just 2000-02-28 11:32:54 +00:00
David Turner
7b63d2ea1b fixed a bug that prevented the reading of AFM
files..
2000-02-28 11:25:01 +00:00
David Turner
7bb7fedef1 fixed a bug which appeared when loading
unscaled composite glyphs
2000-02-28 11:23:36 +00:00
David Turner
63cb46dd1a simple fixes 2000-02-22 13:34:26 +00:00
David Turner
08fdac980a fixed a bug in the glyph loader that caused a memory
block to be freed twice. Also performed changes to use
the new glyph zone object that has appeared in ftobjs.h
2000-02-21 16:01:33 +00:00
David Turner
cbfaedcefa added glyph zone objects 2000-02-21 16:00:36 +00:00
Werner Lemberg
547a252af1 Formatting. Adding/Fixing documentation. 2000-02-16 08:23:58 +00:00
David Turner
d16a4b8111 removed obsolete hinter source code 2000-02-15 12:56:44 +00:00
David Turner
95bec28220 updated version of the experimental Type 1 driver
(this thing now works even better than the "regular"
driver, but is much smaller).

Provides no hinter !!
2000-02-15 12:55:57 +00:00
David Turner
861ba624db small fix (reduce compiler warnings) 2000-02-15 12:54:51 +00:00
David Turner
24ea09fcbd small fix 2000-02-15 12:54:06 +00:00
David Turner
18789bfe9f Added prototype OpenType Layout support
sources. This is not a port of the OTL extension
of FT 1.x, as it uses a very different design.

These sources are placed here for comments
and peer-review
2000-02-15 12:53:31 +00:00
David Turner
dbe4872bf0 removed obsolete source file 2000-02-14 16:45:40 +00:00
David Turner
a56489e01f The code has been updated to use the finite-state
table loader in "ftstream" (when the macro READ_FIELDS)
is defined.

This is experimental..
2000-02-13 13:41:56 +00:00
David Turner
33263421f8 formatting 2000-02-13 13:38:45 +00:00
David Turner
851688057d small bug fix used to compile when the SFNT
module doesn't support embedded bitmaps and
postscript names..
2000-02-13 13:38:27 +00:00
David Turner
7663f22288 Added support for the "attach_file" format-specific driver
interface, used to implement FT_Attach_File.

Note, this is currently very lightly tested..
2000-02-13 13:37:38 +00:00
David Turner
818336fdf4 Added the function FT_Read_Fields, it acts as a
finite-state automata to load large TrueType tables
in object structures.

This is experimental, don't mess too much with it,
thanks :-)
2000-02-13 13:36:53 +00:00
David Turner
3188a3a112 Sorry, forgot some changes needed to get rid of
t1encode.[hc]. Here they come..
2000-02-13 13:34:18 +00:00
David Turner
5ae1259c03 removed the "t1encode" files which are now
obsolete with the "psnames" module
2000-02-10 19:17:24 +00:00
David Turner
7433655cbd Some changes. The SFNT driver is able to return
Postscript glyph names even when the "psnames"
module is not used..
2000-02-10 19:14:48 +00:00
David Turner
c3122c98ce added some comments 2000-02-10 19:11:30 +00:00
David Turner
1ab77fdfff some updates to make everything compile clean 2000-02-10 18:08:17 +00:00
David Turner
5dc8aba72b some modifications used to introduce the Type 1 AFM parser
and psnames module
2000-02-10 17:01:24 +00:00
David Turner
1a26888da3 some changes to ensure that the code compiles
cleanly when TT_CONFIG_OPTION_POSTSCRIPT_NAMES
is undefined..
2000-02-10 16:17:23 +00:00
David Turner
a8635cc626 Very simple AFM Parser 2000-02-10 16:15:11 +00:00
David Turner
cda32b71ba added the FT_Attach_File function to enable AFM
parsing.

Also, changed the API for FT_Open_Face to allow
broader stream descriptions..
2000-02-10 16:14:35 +00:00
David Turner
71ec10efe5 support for the IGNORE_GLOBAL_ADVANCE_WIDTH
loading flag
2000-02-10 16:09:35 +00:00
David Turner
dba4b3243a small update to the kerning code 2000-02-10 16:08:59 +00:00
David Turner
afdc4c4c2b Updates to the Type 1 driver
Now with a simple AFM parser in order
to read the kerning table..
2000-02-10 16:08:36 +00:00
David Turner
51d4e28daf New version of the Type 1 driver.
Generates a Unicode charmap on the fly
through the "psnames" module..

Now, we only need to support afm/pfm
files (and maybe multiple masters) to call
this driver finished !!
2000-02-10 13:11:43 +00:00
David Turner
5c9a571a5a new psnames module 2000-02-10 13:10:32 +00:00
David Turner
0dd3434801 The Type 1 experimental driver was updated
- small reduction of the code size of "t1encode.c"
- removed the hinter (not useful with the upcoming
  auto-hinter..)
- updated "t1load.c" to reduce warnings with Visual C++
- considerably changed the glyph loader (it is simpler)

Beware, this code is still experimental, and is _not_
debugged. I don't even guarantee that it works for
now

- David
2000-02-02 12:20:53 +00:00
David Turner
8f43c714a5 A major refresh of the TrueType driver :
- some #ifdefs were included in order to _not_
  compile support for the bytecode interpreter
  when FT_CONFIG_OPTION_BYTECODE_INTERPRETER
  is not defined in "ttconfig.h"

- the glyph loader has been seriously re-designed. It is now
  smaller, simpler and should load composites a bit faster

- works with the TrueType debugger
2000-02-02 12:16:19 +00:00
David Turner
2dfb5aca28 added a new experimental Type 1 driver. This version sports several
improvements compared to "src/type1". Briefly :

  - the postscript-like interpreter is now gone. We now perform
    pattern-matching to load our font content. The resultant code
    is much faster, smaller, and easier to maintain.

    For a more detailed description, see the comments at the start
    of "src/type1z/t1objs.c"

  - the glyph loader will be greatly simplified really soon, and the
    clumsy hinter will be ditched in favor of a more general auto-hinting
    module (when we get one).

    The goal is to strip down the Type1 driver to about 15-20 Kb.

This is still an experimental version. It is added to the repository
for archiving. You should not try to use it for now (it won't work
because some crucial parts are _knowingly_ ignored for now !).

Note that the "old" type1 driver will probably move to the "demos/src"
directory, in order to show how one can replace one given font driver
at runtime (and to provide the functionality of the "t1dump" program).
2000-01-27 14:02:04 +00:00
David Turner
d42c68e855 many new small, but important, changes there:
- modified the interface of the "sfnt" module. There is now a function
    called "load_format_tag", and another called "load_directory".

    The first one is in charge of returning the 4-byte tag located at
    the beginning of a given font file. It understand TrueType collections
    and parses them automatically

    The second loads the table directory that is located just after
    the format tag.

    This is useful, because the "SFNT" storage scheme can be used by
    several distinct formats, each with its own format tag.

    The TrueType driver now checks the format tag in "src/truetype/ttobjs.c"

  - made some changes to "src/shared/t1types.h" to clearly separate the
    Type 1 font content from the rest of the T1_Face structure. This
    will be useful when adding the CFF/Type2 driver that will be able
    to reuse the "T1_Font" structure within a "TT_Font" one (which
    really describes a SFNT-based font file).

    Some changes in "src/type1" were thus performed to reflect this.
    Note that the current type1 driver will be discontinued in a
    distant future. More on this later..
2000-01-27 13:56:02 +00:00
David Turner
76bbd5793f the T1_Face definition changed slightly to clearly separate the
Type 1 font content from the rest. This implied some changes to
the following files.
2000-01-27 13:35:16 +00:00
David Turner
3ba47068a6 some updates to the "rules.mk" files. Basically, we now
use "$(FT_COMPILE)" instead of "$(FT_CC)" in order to
compile the library.

$(FT_COMPILE) uses the $(ANSI_FLAGS) variable used to
define ANSI-compliance flags for the current compiler. It is used
to compile the library exclusively (some demo programs will _not_
compile properly with these flags set).
2000-01-17 11:25:57 +00:00
David Turner
3b925ef744 fixed a minor bug in the computation of the vertical
metrics top-side bearing
2000-01-17 11:22:59 +00:00
David Turner
fdc225b153 fixed another small bug in the FT_Read_xxxx functions
(they didn't updated the stream position in the case of
disk-based streams. This went un-noticed under Linux
which uses memory-mapped files by default)
2000-01-17 11:21:49 +00:00
David Turner
8cd9575c27 fixed small bug 2000-01-17 11:21:00 +00:00
Werner Lemberg
7dff772e59 Added ftraster.h for better support of standalone mode.
Fixed cleaning rules for the demo programs.
2000-01-17 08:24:22 +00:00
Werner Lemberg
9ab7c3c37e Fixed compilation bug for standalone mode. 2000-01-15 12:43:27 +00:00
David Turner
cef95a09d7 Yet another improvements to the scan-converter. Some macros were
introduced to use a constant precision and dynamic bezier decomposition
thresholding, leading some performance improvements.

Note that by now, the "high_precision" field of a FT_Outline
is ignored by the raster..
2000-01-14 15:36:00 +00:00
David Turner
4f2d5b9a48 fixed a bug which prevented the raster from correctly
performing horizontal dropout control..
2000-01-13 18:20:28 +00:00
David Turner
454a428542 fixed a bug which caused some font family and style
names to be incorrectly ignored..
2000-01-13 18:19:51 +00:00
David Turner
ef87970dfb A few modifications to allow more broken fonts to
be loaded by the driver.
2000-01-13 18:19:10 +00:00
Werner Lemberg
40b4ef1ebd Remove double increment of charmap. 2000-01-12 22:44:03 +00:00
Werner Lemberg
7880dd6630 ftcalc.c, ftextend.c, ftoutln.c, ftraster.c, ftstream.c:
Removing trailing spaces.

ftlist.h:
  Removing duplicated documentation (which is in ftlist.c also).

ftinit.c, ftlist.c, ftobjs.c:
  Formatting, adding documentation.
2000-01-10 17:19:45 +00:00
Werner Lemberg
0db8d1ab84 Formatting. 2000-01-09 17:54:56 +00:00
Werner Lemberg
f697866ec2 Bugfix: prep table is optional. 2000-01-08 20:00:54 +00:00
Werner Lemberg
f993b6a033 demos/config/x11/rules.mk:
support for multiple X11R6 entries in $(PATH) added.

ftxbbox.c, ftcalc.c, ftdebug.c, ftdriver.h:
  doc fixes.

ftdebug.c:
  formatting.

ftdebug.h:
  making makros `;'-safe (i.e., they can now be used within if-else clauses
  without side effects resp. don't produce a single `;').
2000-01-08 17:10:33 +00:00
David Turner
fc1f989446 Finally, the TrueType driver was completely audited. The code should
now be 100% compatible with the implementation in FreeType 1.x.

It's now time to make a new tag for the repository :-)

- David
2000-01-07 18:44:50 +00:00
Werner Lemberg
2b94ffad74 More docs added. 2000-01-07 15:02:05 +00:00
David Turner
30a0c6264f Update some copyrights here and there 2000-01-07 14:07:21 +00:00
David Turner
2fce88c6b9 Removed some unused source code (it came from the old
FT2 beta, and was moved to "src/sfn")
2000-01-07 14:01:59 +00:00
Werner Lemberg
17ae985d38 ftbbox.h: FT_Get_Outline_BBox() must be called FT_Raster_GetBBox().
ftcalc.c: Added a missing closing paranthesis in 64bit version of
          FT_MulFix().

Some formatting; updating copyright.
2000-01-02 09:41:30 +00:00
David Turner
433bc53fb6 Additional improvements to make the anti-aliasing even faster :-)
As previously, this is only noticable for sizes over 64 pixels.
1999-12-30 12:28:03 +00:00
David Turner
5951ce9fc6 updated the CHANGES file
+ some basic formatting cleaning
1999-12-29 00:53:44 +00:00
David Turner
10effdf61e Added the rules files `module.mk' to "sfnt", "truetype" and "type1" to
reflect the new modules/drivers list management performed through the
file `freetype2/config/modules.mk'

Changed the driver header files to reflect the new modules/drivers
list management. We get rid, at last, of the infamous pre-processor
tricks used to build the list at compile time.

`src/base/ftinit.c' is also modified to reflect the changes..
1999-12-29 00:22:24 +00:00
David Turner
34b3032045 Some improvements to make the new anti-alias algorithm faster when
large glyph images are generated (e.g. ` fttimer -g' runs 20% faster).

For small pixel sizes (i.e. typically less than 64 pixels), rendering
speed is unaffected.
1999-12-28 18:36:10 +00:00
David Turner
d2b1f35704 Initial revision 1999-12-16 23:11:37 +00:00