Commit Graph

6319 Commits

Author SHA1 Message Date
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 0360168a4d moved the files in "docs/internals" to "docs/design". The image files
were also all added to the repository in binary format !!
2000-01-31 18:20:32 +00:00
David Turner 17d6bdec92 removed obsolete documentation files 2000-01-31 18:18:56 +00:00
David Turner 442005b736 removed the old "glyph_conventions" directory, now replaced by
"glyphs"
2000-01-31 18:17:02 +00:00
David Turner f948758609 weel, the previous operation didn't work well, as the images were
still stored as text on the server !!

I have created the "docs/glyphs" directory to hold a copy of the
files, and add them with the correct tags..
2000-01-31 18:15:12 +00:00
David Turner f0a46def9d added the image files in binary form in the repository 2000-01-31 18:11:31 +00:00
David Turner dda05ee1da removed the PNG images as they were incorrectly stored as text files
in the repository
2000-01-31 18:11:00 +00:00
David Turner 633da99a23 updated changes log 2000-01-27 14:07:33 +00:00
David Turner f300d695f4 some updates/corrections 2000-01-27 14:03:39 +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
Werner Lemberg b3a85b00c4 FreeType licence. 2000-01-25 08:16:54 +00:00
David Turner d00a8ce6f2 some updates. The yesterday modifications prevented the demo
programs from compiling under Unix. fixed..
2000-01-18 09:52:08 +00:00
Werner Lemberg 9d61e46855 Fixed rule with wildcard. 2000-01-18 02:07:04 +00:00
David Turner a5ab5ce791 adding correct versions of the PNG images 2000-01-17 20:51:18 +00:00
David Turner 438f8cd27b removing invalid PNG images 2000-01-17 20:50:18 +00:00
Eric Olson 702b8d52cf Removed obsolete file in uppercase. FTOPTION.H has fallen behind the
ftoption.h file. Its continued presence causes some problems with case
insensitive systems.
--Eric
2000-01-17 19:44:07 +00:00
David Turner 6afe00774a colored the example source code and corrected some
typos
2000-01-17 19:25:18 +00:00
David Turner b94713e9c5 Added a FreeType 2 Tutorial !! 2000-01-17 18:56:49 +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
David Turner 281f9f6a13 Important changes were performed to clean up the makefiles,
these will be detailed later in a document (the work is not
completely finished).
2000-01-17 11:20:26 +00:00
David Turner 5ce5884d59 some small updates that are useful to debug
graphics drivers and the library..
2000-01-17 11:08:11 +00:00
David Turner 1631d04827 moved the graphics drivers to "demos/graph/*" 2000-01-17 11:06:27 +00:00
David Turner cb58dbb4fb Some important changes were performed :
- the graphics drivers were moved from "demos/config/*" to
  "demos/graph/*"

- a Win32 graphics driver was added. (note that keyboard
  management is a bit buggy, but it's really usable).

- the "demos/Makefile" and "demos/graph/rules.mk" were
  seriously modified

- the demo programs now compile AND run with gcc,
  Visual C++ and LCC-Win32 !! The other ones should be
  really easy to add now, as LCC was the really smart ass
  in this list...
2000-01-17 11:04:55 +00:00
David Turner 14954e6bc2 Some major improvements were required to the Makefile to:
- compile the demonstration programs in any directory, by
  using the "TOP" and "CONFIG_MK" environment variables

- the graphics drivers have moved from "demos/config/*" to
  "demos/graph/*"

- brain-dead compilers like LCC-Win32 required some
  changes in the way executables are linked
2000-01-17 10:56:16 +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 f6356ab713 some changes used to debug the new raster and the OS/2
graphics driver
2000-01-14 15:38:30 +00:00
David Turner 6bc8b1f07d bugfixes to the OS/2 graphics driver. It now works !! 2000-01-14 15:36:55 +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 a00b6e690f Fixing Makefile rules. 2000-01-13 15:35:02 +00:00
Werner Lemberg 40b4ef1ebd Remove double increment of charmap. 2000-01-12 22:44:03 +00:00
David Turner 3aeb4c05f2 Added a new document to docs/internals that describes
the Build System clearly. I hope this will help other
developers in adding platform-detection makefiles for
additional systems..
2000-01-11 20:00:05 +00:00
David Turner 426b20af02 Added the new "io-frames.html" document, that describes the frame interface
as well as the new READ_xxxx and FT_Read_xxxx functions/macros..
2000-01-11 04:59:55 +00:00
David Turner 186d231081 Added a new documentation file that explains how memory management and
basic i/o access are performed with FreeType 2.

Note that unlike FT 1.x, you don't need to recompile the library if
you want to provide your own memory manager or your own i/o streams.
2000-01-11 04:09:35 +00:00
David Turner a14fa3ace8 damned.. 2000-01-11 02:26:38 +00:00
David Turner 98408d8937 renamed "internals.html" to "index.html"
also, changed all image references to the new PNGs

Note that this document is really out-of-date
(there are no more resources, the stream manager has disappeared,
 the build systel was seriously modified, etc..)
2000-01-11 02:22:16 +00:00
David Turner 41a8fa57b1 Renamed "glyph_conventions.html" to "index.html"
Updated all image references to the new PNGs

Note that this document is slightly out-of-date though..
(FT_Raster_Map was changed for FT_Bitmap, and the anti-alias renderer
 now supports 128 levels by default).
2000-01-11 02:20:22 +00:00
David Turner ee71c6b715 added PNG files 2000-01-11 01:40:25 +00:00
David Turner 4b7ffcfa19 removed GIF files 2000-01-11 01:40:06 +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
David Turner ecbfb5fa9a added the DocMaker python script that will be used to generate the HTML documentation from the C source files 2000-01-10 15:49:01 +00:00
Werner Lemberg 0db8d1ab84 Formatting. 2000-01-09 17:54:56 +00:00