📄 changelog.22
字号:
* src/psaux/afmparse.c (afm_parser_read_vals): Use double casting
to avoid compiler warnings regarding type-punning.
2006-01-16 Chia-I Wu <b90201047@ntu.edu.tw>
* src/psaux/afmparse.c, src/psaux/afmparse.h: New files which
implement an AFM parser.
* src/psaux/psconv.c, src/psaux/psconv.h: New files to provide
conversion functions (e.g., PS real number => FT_Fixed) for the
PS_Parser and AFM_Parser. Some of the functions are taken, with
some modifications, from the file psobjs.c.
* src/psaux/psobjs.c: Use functions from psconv.c.
* include/freetype/internal/psaux.h, src/psaux/psauxmod.c: Add
`AFM_Parser' to the `psaux' service.
* src/psaux/psaux.c, src/psaux/rules.mk (PSAUX_DRV_SRC): Include
those new files.
* src/tools/test_afm.c: A test program for AFM parser.
* include/freetype/internal/services/svkern.h: New file providing a
`Kerning' service. It is currently only used to get the track
kerning information.
* include/freetype/internal/ftserv.h (FT_SERVICE_KERNING_H): New
macro.
* src/type1/t1driver.c, src/type1/t1objs.c, src/type1/t1afm.c,
src/type1/t1afm.h: Update to use the AFM parser.
Provide the `Kerning' service.
* include/freetype/freetype.h, src/base/ftobjs.c: New API
`FT_Get_Track_Kerning'.
2006-01-15 Chia-I Wu <b90201047@ntu.edu.tw>
* include/freetype/internal/ftobjs.h, src/base/ftobjs.c,
src/bdf/bdfdrivr.c, src/cff/cffgload.c, src/cid/cidgload.c,
src/pcf/pcfdrivr.c, src/type1/t1gload.c, src/winfonts/winfnt.c:
s/ft_fake_vertical_metrics/ft_synthesize_vertical_metrics/.
* docs/CHANGES: Mention that vertical metrics are synthesized for
fonts not having this info.
2006-01-15 Chia-I Wu <b90201047@ntu.edu.tw>
* include/freetype/internal/ftobjs.h (ft_fake_vertical_metrics),
src/base/ftobjs.c (ft_fake_vertical_metrics): New function to fake
vertical metrics.
* src/cff/cffgload.c, src/cid/cidgload.c, src/pcf/pcfdrivr.c,
src/type1/t1gload.c, src/winfonts/winfnt.c: Fake vertical metrics,
which are monotone.
* src/truetype/ttgload.c (compute_glyph_metrics): Some fixes and
formattings in vertical metrics faking. There is still room for
improvements (and so does the CFF module).
2006-01-15 Chia-I Wu <b90201047@ntu.edu.tw>
* src/bdf/bdfdrivr.c (BDF_Glyph_Load), src/pcf/pcfdrivr.c
(PCF_Glyph_Load), src/winfonts/winfnt.c (FNT_Load_Glyph): Don't set
the linear advance fields as they are only used by the outline
glyphs.
* include/freetype/freetype.h: Documentation updates and
clarifications.
The meaning of FT_LOAD_FORCE_AUTOHINT is changed so that no real
change need be made to the code.
* src/base/ftobjs.c (FT_Load_Glyph): Resolve flag dependencies and
decide whether to use the auto-hinter according to documentation.
There should to be no real difference.
Some checks (e.g., is text height positive?) after the glyph is
loaded.
(FT_Select_Size, FT_Request_Size): Scales are set to wrong values.
Be careful that scales won't be negative.
2006-01-14 Chia-I Wu <b90201047@ntu.edu.tw>
* docs/CHANGES: Mention the size selection change.
* src/bdf/bdfdrivr.c (BDF_Size_Request, BDF_Size_Select),
src/pcf/pcfdrivr.c (PCF_Size_Request, PCF_Size_Select),
src/winfonts/winfnt.c (FNT_Size_Request, FNT_Size_Select): Do size
matching for requests of type NOMINAL and REAL_DIM.
* src/winfonts/winfnt.c (FNT_Face_Init): Print trace message when
`pixel_height' is used for nominal height.
* src/base/ftobjs.c (FT_Request_Size): Call `FT_Match_Size' if the
face is bitmap only and driver doesn't provide `request_size'. This
is added merely for completion as no driver satisfies the conditions.
2006-01-13 Chia-I Wu <b90201047@ntu.edu.tw>
Introduce new size selection interface.
* include/freetype/internal/ftdriver.h (struct FT_Driver_ClassRec):
Replace `set_char_sizes' and `set_pixel_sizes' by `request_size' and
`select_size'.
* include/freetype/freetype.h (FT_Select_Size, FT_Size_Request_Type,
FT_Size_Request, FT_Request_Size, FT_Select_Size), src/base/ftobjs.c
(FT_Select_Size, FT_Request_Size): API additions to export the new
size selection interface.
* src/base/ftobjs.c (FT_Set_Char_Size, FT_Set_Pixel_Sizes): Use
`FT_Request_Size'.
* include/freetype/internal/ftobjs.h (FT_Match_Size),
src/base/ftobjs.c (FT_Match_Size): New function to match a size
request against `available_sizes'. Drivers supporting bitmap strikes
can use this function to implement `request_size'.
* src/bdf/bdfdrivr.c, src/cid/cidobjs.c, src/cid/cidobjs.h,
src/cid/cidriver.c, src/pcf/pcfdrivr.c, src/type1/t1driver.c,
src/type1/t1objs.c, src/type1/t1objs.h, src/type42/t42drivr.c,
src/type42/t42objs.c, src/type42/t42objs.h, src/winfonts/winfnt.c:
Update to new size selection interface.
* src/cff/cffdrivr.c, src/cff/cffgload.c, src/cff/cffobjs.c,
src/cff/cffobjs.h, src/truetype/ttdriver.c, src/truetype/ttgload.c,
src/truetype/ttobjs.c, src/truetype/ttobjs.h: Update to new size
selection interface.
Make `strike_index' FT_ULong and always defined.
Use `load_strike_metrics' provided by SFNT interface.
2006-01-13 Chia-I Wu <b90201047@ntu.edu.tw>
* include/freetype/internal/sfnt.h (SFNT_Interface): New method
`load_strike_metrics' used to load the strike's metrics.
* src/sfnt/sfdriver.c, src/sfnt/ttsbit.c, src/sfnt/ttsbit.h,
src/sfnt/ttsbit0.c: New function `tt_face_load_strike_metrics'.
* src/pfr/pfrobjs.c (pfr_face_init): Set FT_Bitmap_Size correctly.
* src/winfonts/winfnt.c (FNT_Face_Init): Use `nominal_point_size' for
nominal size unless it is obviously incorrect.
* include/freetype/freetype.h (FT_Bitmap_Size): Update the comments on
FNT driver.
2006-01-12 Werner Lemberg <wl@gnu.org>
Prepare use of pscmap service within CFF module.
* include/freetype/internal/services/svpscmap.h: Include
FT_INTERNAL_OBJECTS_H.
(PS_Unicode_Index_Func): Removed. Unused.
(PS_Macintosh_Name_Func): Renamed to...
(PS_Macintosh_NameFunc): This.
Update all callers.
(PS_Adobe_Std_Strings_Func): Renamed to...
(PS_Adobe_Std_StringsFunc): This.
Update all callers.
(PS_UnicodesRec): This is the former `PS_Unicodes' structure.
Add `cmap' member.
Update all callers.
(PS_Unicodes): This is now a typedef'd pointer to PS_UnicodesRec.
Update all callers.
(PS_Glyph_NameFunc): New typedef.
(PS_Unicodes_InitFunc): Change arguments to expect a function
and generic data pointer which returns a glyph name from a given
index.
* src/psnames/psmodule.c (ps_unicodes_init, ps_unicodes_char_index,
ps_unicodes_char_next, pscmaps_interface): Updated.
* include/freetype/internal/t1types.h (T1_FaceRec): Updated.
* src/psaux/t1cmap.h (T1_CmapStdRec): Updated.
(T1_CmapUnicode, T1_CmapUnicodeRec): Removed.
* src/psaux/t1cmap.c (t1_get_glyph_name): New callback function.
(t1_cmap_unicode_init, t1_cmap_unicode_done,
t1_cmap_unicode_char_index, t1_cmap_unicode_char_next,
t1_cmap_unicode_class_rec): Updated.
* src/type42/t42types.h (T42_FaceRec): Updated.
2006-01-11 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
* include/freetype/ftmac.h: Add declaration of new functions
FT_New_Face_From_FSRef and FT_GetFile_From_Mac_ATS_Name that
were introduced by the jumbo patch on 2006-01-11.
2006-01-11 Werner Lemberg <wl@gnu.org>
Fix Savannah bug #15056 and use pscmap service in psaux module.
* include/freetype/internal/services/svpscmap.h (PS_UniMap): Use
FT_UInt32 for `glyph_index'.
(PS_Unicodes_InitFunc): Use FT_String for `glyph_names'.
(PS_Unicodes_CharIndexFunc): Use FT_UInt32 for `unicode'.
(PS_Unicodes_CharNextFunc): Make second argument a pointer to
FT_UInt32.
* src/psnames/psmodule.c (VARIANT_BIT, BASE_GLYPH): New macros.
(ps_unicode_value): Set VARIANT_BIT in return value if glyph is a
variant glyph (this is, it has non-leading `.' in its name).
(compare_uni_maps): Sort base glyphs before variant glyphs.
(ps_unicodes_init): Use FT_String for `glyph_names' argument.
Reallocate only if number of used entries is much smaller.
Updated to handle variant glyphs.
(ps_unicodes_char_index, ps_unicodes_char_next): Prefer base glyphs
over variant glyphs.
Simplify code.
* src/psaux/t1cmap.c (t1_cmap_uni_pair_compare): Removed.
(t1_cmap_unicode_init, t1_cmap_unicode_char_index,
t1_cmap_unicode_char_next): Use pscmap service.
(t1_cmap_unicode_done): Updated.
* src/psaux/t1cmap.h (T1_CMapUniPair): Removed.
(T1_CMapUnicode): Use PS_Unicodes structure.
2006-01-11 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
Jumbo patch to fix `deprecated' warning of cross-build for Tiger on
Intel, as reported by Sean McBride <sean@rogue-research.com> on
2005-08-24.
* src/base/ftmac.c: Heavy change to build without deprecated Carbon
functions on Tiger.
* builds/unix/configure.ac: Add options and autochecks for Carbon
functions availabilities, for MacOS X.
* builds/mac/ascii2mpw.py: Add converter for character `\305'.
* builds/mac/FreeType.m68k_{far|cfm}.make.txt: Add conditional
macros to avoid unavailable functions.
ftmac.c must be compiled without `-strict ansi', because it disables
cpp macro to use ToolBox system call.
* builds/mac/FreeType.ppc_{classic|carbon}.make.txt: Add conditional
macros to avoid unavailable functions.
* builds/mac/README: Detailed notes on function availabilities.
* docs/CHANGES: Notes about (possible) incompatibilities.
2006-01-08 Werner Lemberg <wl@gnu.org>
* docs/CHANGES: Updated.
2006-01-08 Huw D M Davies <h.davies1@physics.ox.ac.uk>
* include/freetype/ftmodapi.h (FT_Module_Get_Flags): New
declaration.
* src/base/ftobjs.c (FT_Module_Get_Flags): New function.
2006-01-07 Werner Lemberg <wl@gnu.org>
* src/pcf/pcfread.c (pcf_get_bitmaps): Remove unused variable
`bitmaps'. Reported by Yu Lei <yulei0@gmail.com>.
* src/base/ftutil.c (ft_highpow2): s/FT_BASE/FT_BASE_DEF/.
Reported by Niels Boldt <nielsboldt@gmail.com>.
2005-12-28 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
* src/sfnt/sfnt/ttbdf.c: Add newline '\n' to the end of file, for
MPW compiler.
2005-12-23 David Turner <david@freetype.org>
* Jamfile (RefDoc), docs/reference/README: Fix it so that `jam
refdoc' works correctly to generate the API reference in
`docs/reference'.
* src/tools/docmaker/tohtml.py (print_html_field,
print_html_field_list): Update to output nicer fields lists in the
API reference.
* src/base/ftobjs.c (FT_Load_Glyph): FT_LOAD_TARGET_LIGHT now
forces auto-hinting.
* freetype/freetype.h: Updating the documentation for
FT_LOAD_TARGET_XXX and FT_Render_Mode values.
2005-12-23 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
* src/base/ftmac.c (FT_New_Face_From_Suitcase): Count scalable faces
in supported formats (sfnt, LWFN) only, and ignore bitmap faces in
unsupported formats (fbit, NFNT). The number of available faces are
passed via face->num_faces. If bitmap faces are embedded in sfnt
resource, face->num_fixed_size is correctly set. In public API,
FT_New_Face() and FT_New_Face_From_FSSpec() count the faces as
FT_GetFile_From_Mac_Name(), which ignores NFNT resources.
* doc/CHANGES: Mention the changes.
2005-12-17 Chia-I Wu <b90201047@ntu.edu.tw>
* src/truetype/ttinterp.c (Update_Max): Set current size of buffer
correctly (so that memory debug system won't panic).
2005-12-16 Chia-I Wu <b90201047@ntu.edu.tw>
* include/freetype/internal/ftobjs.h (ft_glyphslot_grid_fit_metrics),
src/base/ftobjs.c (ft_glyphslot_grid_fit_metrics): Removed.
* src/base/ftobjs.c (ft_recompute_scaled_metrics): Do not round.
* src/cff/cffgload.c (cff_slot_load), src/cid/cidgload.c
(cid_slot_load_glyph), src/truetype/ttgload.c (compute_glyph_metrics),
src/type1/t1gload.c (T1_Load_Glyph): Do not round glyph metrics.
* doc/CHANGES: Mention the changes.
2005-12-13 David Turner <david@freetype.org>
Change the implementation of the LIGHT hinting mode to completely
disable horizontal hinting. This is an experimental effort to
integrate David Chester's latest patch without affecting the other
hinting modes as well.
Note that this doesn't force auto-hinting for all fonts, however.
* src/autofit/afhints.c (af_glyph_hints_reload): Don't set
scaler_fiags here but...
(af_glyph_hints_rescale): Here.
* src/autofit/aflatin.c (af_latin_hints_init): Disable horizontal
hinting for `light' hinting mode.
* Jamfile: Small fix to ensure that ftexport.sym is placed into the
same location as other generated objects (i.e., within the `objs'
directory of the current directory).
Add support for an embedded `BDF ' table within SFNT-based bitmap
font files. This is used to store atoms & properties from the
original BDF fonts that were used to generate the font file.
The feature is controlled by TT_CONFIG_OPTION_BDF within
`ftoption.h' and is used to implement FT_Get_BDF_Property for these
font files.
At the moment, this is still experimental, the BDF table format
isn't cast into stone yet.
* include/freetype/config/ftoption.h (TT_CONFIG_OPTION_BDF): New
macro.
* include/freetype/config/ftstdlib.h (ft_memchr): New macro.
* include/freetype/internal/tttypes.h (TT_BDFRec, TT_BDF)
[TT_CONFIG_OPTION_BDF]: New structure.
(TT_FaceRec) [TT_CONFIG_OPTION_BDF]: New member `bdf'.
* include/freetype/ttags.h (TTAG_BDF): New macro.
* src/sfnt/Jamfile (_sources):
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -