Commit Graph

7070 Commits

Author SHA1 Message Date
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
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