src/type1


Log

Author Commit Date CI Message
Tom Kacvinsky 16bf6da6 2000-11-30T21:56:55 Fixed computation of `face->height'.
Werner Lemberg f1ca2344 2000-11-29T15:18:54 * src/sfnt/sfdriver.c: Include ttsbit.h and ttpost.h only conditionally. * src/truetype/ttdriver.c (Set_Char_Sizes, Set_Pixel_Sizes): Set `size->strike_index' only conditionally. * src/type1/t1driver.c, src/type1/t1objs.c: Include t1afm.h only conditionally. * src/winfonts/winfnt.h: Move all type definitions to... * src/include/freetype/internal/fnttypes.h: New file. * src/winfonts/winfnt.c: Use it. * include/freetype/internal/ftdebug.h: Replaced FT_CAT and FT_XCAT with a direct solution (which also satifies picky compilers).
Werner Lemberg 6dd303db 2000-11-26T21:25:53 * builds/ansi/ansi.mk: Fix inclusion order of files. * src/type1/t1objs.c (T1_Init_Face): Compute style flags.
Werner Lemberg 27695e5d 2000-11-23T08:21:13 * src/type1/t1load.c (parse_subrs, parse_charstrings): Use decrypt function from PSAux module. * src/type1/t1parse.c (T1_Done_Parse): Renamed to... (T1_Finalize_Parser): New function (to avoid name clash with a function in the PSAux module). (T1_Decrypt): Removed since it it duplicated in the PSAux module. (T1_Get_Private_Dict): Added `psaux' as new parameter; use decrypt function from PSAux module. * src/type1/t1parse.h: Adapted.
David Turner c9d7b5e3 2000-11-09T03:18:32 minor warning with VC++ solved
David Turner 5387d894 2000-11-08T19:40:08 fixed max advance width for fixed-pitch T1 fonts
Werner Lemberg 90a03301 2000-11-07T17:21:11 All function comments are now removed from source files (and moved to the header files if necessary). Some minor fixes to have `make multi' run successfully (with gcc and g++). Fixing compiler warnings.
Werner Lemberg dc72aff4 2000-11-04T08:33:38 Finishing David's latest changes (there were some errors in it).
David Turner 54e75749 2000-11-04T02:52:02 defining new types to hold "internal" fields of public objects: FT_Face_Internal, FT_Size_Internal, FT_Slot_Internal these contain some fields that may change between releases of FreeType, without affecting the size of FT_FaceRec, FT_SizeRec, FT_GlyphSlotRec, etc.., which means that drivers wouldn't need to be recompiled if we only add new fields to an internal structure.. I plan to hack a few things related to the auto-hinter and I need this move to ensure that we will not break binary compatibility between 2.0 and 2.1 :-) - David
David Turner 76a5f623 2000-11-04T01:55:49 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
Werner Lemberg a13a473d 2000-11-02T15:14:38 More C++ fixes.
Werner Lemberg ab855232 2000-10-31T22:13:54 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.
Werner Lemberg e4b32a5d 2000-10-31T20:42:18 Removing trailing whitespace.
Werner Lemberg b5084e11 2000-10-28T17:10:06 Renamed z1* files back to t1*; the same transition for Z1_* structures Removed obsolete raster1/* files.
Werner Lemberg ddbb8e7b 2000-10-26T10:04:16 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.
David Turner a4e2894e 2000-10-26T00:30:33 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 :-)
David Turner 888706a3 2000-08-23T22:50:39 removing obsolete files
Werner Lemberg 29a90e26 2000-08-03T00:03:08 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.
Werner Lemberg 3a89c2a4 2000-08-01T17:05:20 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!
Werner Lemberg c713d924 2000-08-01T13:17:04 Added #ifdef's for C++ to all header files.
David Turner 5fe4c00e 2000-07-26T19:04:08 - 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 !!)
Werner Lemberg c3dd151b 2000-07-26T14:11:15 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
Werner Lemberg 81991cd2 2000-07-21T16:43:55 Fix file inclusion.
Werner Lemberg d060a75b 2000-07-20T06:57:41 Formatting. Rudimentary support for autoconf (still using GNU make) Say `make unix'.
David Turner 6930b45f 2000-07-19T17:13:03 - 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..
David Turner e161ee44 2000-07-10T22:03:10 fixed a bug that caused invalid clipping of monochrome bitmaps when they were blitted on the left edge of an 8-bit pixmap..
Werner Lemberg b48a6094 2000-07-09T19:15:30 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.
Werner Lemberg 7fa51b55 2000-07-08T19:51:42 Formatting. Adding some trivial error checking. Adding/Fixing tracing levels.
David Turner a90663f5 2000-07-08T00:41:13 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"
David Turner 9b3d1c75 2000-07-07T19:47:34 - fixed a leak in the Type 1 driver - updated the CFF driver to support flex opcodes
Werner Lemberg bd5ae400 2000-07-05T04:32:02 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++.
David Turner c6a92202 2000-07-04T18:12:13 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..
Werner Lemberg aa8c7da0 2000-07-04T03:37:18 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
Werner Lemberg d0c36e3b 2000-07-03T16:45:15 Formatting; fixing documentation.
Werner Lemberg 768c9561 2000-07-03T07:09:09 Formatting. Fixing some tracing messages.
David Turner f9ca2bb5 2000-06-30T23:12:55 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..
Werner Lemberg ac39ecdc 2000-06-30T22:24:36 Formatting... Fixing incorrect scaling of vertical advance width.
Werner Lemberg cc9fc49c 2000-06-30T06:21:26 Formatting... Applying some fixes from Tom.
David Turner 5ae831c1 2000-06-30T01:31:22 changes used to implement the auto-hinting support
David Turner 32b85e67 2000-06-29T21:48:58 various bug fixes in the postscript font drivers (mainly they added one un-necessary point to each contour..)
David Turner 81bb4ad9 2000-06-28T04:19:49 latest clean-ups.. The code compiles with NO WARNINGS with GCC and Visual C++ (also with LCC minus debugging options)
David Turner 7ed5a057 2000-06-27T23:23:22 small bugfix
David Turner 385bedb8 2000-06-27T23:22:49 formatting
Werner Lemberg d7a04683 2000-06-25T23:02:11 More formatting. About previous commitment: Added latest versions of (still unused) config.guess and config.sub files.
Werner Lemberg a929ba9b 2000-06-25T06:47:11 applying formatting again
David Turner 2a98b3c4 2000-06-23T13:47:55 reduced some nasty memory leaks
David Turner c3128615 2000-06-23T05:02:13 bugfixes in the Type1 drivers
Pavel Kaňkovský 7802d466 2000-06-23T04:18:55 *top++-bug was not a compiler bug, therefore the comment about the affected compiler was misleading and has been removed
David Turner d0079e66 2000-06-23T00:07:06 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
David Turner e82a82af 2000-06-22T00:26:11 small bugfix in the "seac" code
David Turner f0df85ba 2000-06-22T00:17:42 - 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.
Werner Lemberg 9ca2af38 2000-06-21T03:03:28 A new formatting orgy. Added some `#if 0' to completely disable the CID AFM stuff. In case this is not correct please fix.
David Turner f9b8dec4 2000-06-16T19:34:52 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
Werner Lemberg 78575dc0 2000-06-12T19:36:41 A lot of formatting. Added more tracing levels. More Makefile fixes. Minor other changes.
David Turner 3d99f796 2000-06-07T23:06:10 finally fixed that crazy Type 1 hinter.. it still sucks though .. ;-)
David Turner 6cef627d 2000-06-07T20:06:54 added code to correctly scale global metrics
Werner Lemberg e1d5dd78 2000-06-07T04:48:12 Moved all *errors.h header files to include/freetype/internal for consistency. Removed unused error message.
David Turner 04aa800c 2000-06-01T03:27:48 added a CID-keyed font driver in "src/cid" fixed two bugs in the smooth renderer
David Turner 2e421319 2000-05-26T22:13:17 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..
David Turner fea68c68 2000-05-26T06:40:49 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..
David Turner 936d2e07 2000-05-26T02:16:06 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..
David Turner 1c9a1cab 2000-05-24T21:12:02 important modifications to the Type1z driver these are used to prepare for multiple master fonts
David Turner 1fb6eea7 2000-05-24T00:31:14 EXPORT_DEF renamed to FT_EXPORT_DEF + reformating/spacing
David Turner f5dcdd5c 2000-05-23T22:16:27 minor fix to the Type1 driver(s) to apply the font matrix when necessary..
David Turner e49ab25c 2000-05-16T23:44:38 formatting - removed trailing spaces
David Turner c30aea98 2000-05-12T15:01:18 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
David Turner bfe2f98f 2000-05-12T12:17:15 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..
David Turner 4f2c5544 2000-05-12T10:19:41 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..
David Turner efce08d6 2000-05-11T18:23:52 major re-organisation of the FreeType 2 directory hierarchy
David Turner 4d3e5639 2000-05-05T12:33:23 closed most of the memory leaks in the Type 1 driver(s) this is required before any serious work to implement multiple masters
David Turner d186a361 2000-05-02T17:41:41 various updates to reduce the compilation warnings
David Turner 9a9315fa 2000-05-02T10:59:01 changes to reflect the new files include/tttables.h include/t1tables.h
David Turner 90a36c55 2000-04-04T18:21:45 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 :-)
David Turner 82942cc2 2000-03-30T08:43:03 simple fix required by the auto-hinting module (sets the ft_outline_reverse_fill bit_flag)
David Turner ed7f62ac 2000-03-28T11:19:28 support for FT_LOAD_NO_RECURSE needed by the auto-hinter
David Turner 7f7aadf4 2000-03-13T12:57:27 finished moving all configuration macros to "config/ftoption.h"
David Turner 3246efed 2000-03-13T12:12:46 first step towards moving all configuration options to the single "config/ftoption.h"
David Turner 7f615aef 2000-03-13T11:49:20 renamed all outlines functions to the FT_Outline_<action> syntax..
David Turner 41dbcbf6 2000-03-09T11:46:25 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..
David Turner 0f99ddda 2000-03-06T13:23:32 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..
David Turner 9d76a8d6 2000-03-06T09:51:19 a few fixes to get rid of unwanted compile-time warnings
Just van Rossum 80f4b060 2000-03-05T16:10:10 fixed typo in comment
David Turner ca13392d 2000-03-01T13:24:38 a few changes to really compile font drivers in independent single objects..
David Turner e595014a 2000-02-29T17:14:02 simple minor fix in t1afm.h/t1afm.c
David Turner 9c84887d 2000-02-28T11:32:54 remaining fixes from Just
David Turner 7bb7fede 2000-02-28T11:23:36 fixed a bug which appeared when loading unscaled composite glyphs
David Turner 861ba624 2000-02-15T12:54:51 small fix (reduce compiler warnings)
David Turner 3188a3a1 2000-02-13T13:34:18 Sorry, forgot some changes needed to get rid of t1encode.[hc]. Here they come..
David Turner 5ae1259c 2000-02-10T19:17:24 removed the "t1encode" files which are now obsolete with the "psnames" module
David Turner 1ab77fdf 2000-02-10T18:08:17 some updates to make everything compile clean
David Turner a8635cc6 2000-02-10T16:15:11 Very simple AFM Parser
David Turner afdc4c4c 2000-02-10T16:08:36 Updates to the Type 1 driver Now with a simple AFM parser in order to read the kerning table..
David Turner 51d4e28d 2000-02-10T13:11:43 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 !!
David Turner 76bbd579 2000-01-27T13:35:16 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.
David Turner 3ba47068 2000-01-17T11:25:57 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).
David Turner ef87970d 2000-01-13T18:19:10 A few modifications to allow more broken fonts to be loaded by the driver.
David Turner 10effdf6 1999-12-29T00:22:24 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..
David Turner d2b1f357 1999-12-16T23:11:37 Initial revision