+2010-03-23 Kenichi Handa <handa@m17n.org>
+
+ * src/Makefile.am (libotf_la_SOURCES): Include internal.h.
+
+2010-03-19 Kenichi Handa <handa@m17n.org>
+
+ * src/Makefile.am (libotf_la_SOURCES): Exclude otferror.h.
+
+ * configure.ac: Versions changed to 0.9.11pre.
+
+2010-01-22 Kenichi Handa <handa@m17n.org>
+
+ * src/otfdrive.c (lookup_gsub): Change the meaning of the arg
+ alternate_subst.
+
+2009-12-17 Kenichi Handa <handa@m17n.org>
+
+ * src/otfdrive.c (gstring_subst): Update g->MarkAttachGlass.
+ (lookup_gsub): Update g->GlyphClass and g->MarkAttachGlass.
+ (OTF_drive_gdef): Don't return error even if GDEF table doesn't
+ exist.
+
+2009-11-30 Kenichi Handa <handa@m17n.org>
+
+ * src/otfdrive.c (OTF_drive_gsub_internal): Fix previous change.
+ (OTF_drive_gpos_internal): Likewise.
+
+2009-11-27 Kenichi Handa <handa@m17n.org>
+
+ * src/otfdrive.c (gstring_subst): Set positioning_type to 1.
+ (lookup_gsub): If a feature is applied to a glyph, set its
+ positioning_type to 1.
+ (OTF_drive_gsub_internal): Only if a feature is applied to a
+ glyph, set its feature log.
+ (OTF_drive_gpos_internal): Likewise.
+
+2009-11-24 Kenichi Handa <handa@m17n.org>
+
+ * src/otf.h (OTF_drive_gsub_with_log, OTF_drive_gpos_with_log):
+ Extern them.
+ (OTF_get_drive_log): Delete extern.
+
+ * src/internal.h (OTF_DriveLog): Delete it.
+ (set_drive_log, get_drive_log): Delete externs.
+
+ * src/otfopen.c (OTF_InternalData): Delete the member drive_log.
+ (set_drive_log, get_drive_log): Delete them.
+
+ * src/otfdrive.c (USHORT): New macro for "unsigned short".
+ (prepare_drive_log): Delete it.
+ (setup_lookup_flags): Change the type of lookup_flags.
+ (lookup_gsub): Change the return value.
+ (gstring_insert_for_gpos): Adjusted for the change of
+ OTF_Glyph.positioning_type.
+ (print_glyph_positioning): Likewise.
+ (lookup_gpos): Likewise. Change the return value.
+ (OTF_drive_gsub_internal): New arg "with_log". Adjusted for the
+ change of OTF_Glyph.positioning_type.
+ (OTF_drive_gsub): Fix args to OTF_drive_gsub_internal.
+ (OTF_drive_gsub_with_log): New function.
+ (OTF_drive_gpos_internal): New arg "with_log". Adjusted for the
+ change of OTF_Glyph.positioning_type.
+ (OTF_drive_gpos): Fix args to OTF_drive_gpos_internal.
+ (OTF_drive_gpos2): Likewise.
+ (OTF_drive_gpos_with_log): New function.
+ (OTF_drive_gsub_alternate): Fix args to OTF_drive_gsub_internal.
+ (OTF_iterate_gsub_feature): Adjusted for the change of
+ OTF_Glyph.positioning_type.
+ (OTF_get_drive_log): Delete it.
+
+ * example/otfview.c (update_seq_area): Call
+ OTF_driver_gsub_with_log and OTF_driver_gpos_with_log. Show which
+ features are applied.
+ (get_features): Fix previous change.
+
+2009-11-24 mule <handa@m17n.org>
+
+ * src/otferror.h: Removed. All codes move to internal.h.
+
+ * src/internal.h: New file.
+
+ * src/otfdrive.c: Include internal.h instead of otferror.h.
+ (prepare_drive_log): New function.
+ (OTF_drive_gpos_internal): Make it static.
+ (OTF_get_drive_log): New function.
+
+ * src/otfopen.c: Include internal.h instead of otferror.h.
+ (OTF_InternalData): New member drive_log.
+ (set_drive_log, get_drive_log): New functions.
+
+ * src/otf.h (OTF_get_drive_log): Extern it.
+
+ * example/otfview.c (get_features): Adjusted for the change of
+ FeatureRec->features.
+ (FeatureProc): Don't re-order FeatureRec->features.
+
+2009-11-18 Kenichi Handa <handa@m17n.org>
+
+ * example/otfview.c (update_seq_area): Fix previous change.
+
+ * src/otfdrive.c (match_ids): New arg "direction". Callers changed.
+ (match_ids_backward): Delete it.
+ (match_chain_ids): Adjusted for the change fo match_ids.
+ (match_classes): New arg "direction". Callers changed.
+ (match_chain_classes): Adjusted for the change fo match_classes.
+ (match_coverages): New arg "direction". Callers changed.
+ (match_chain_coverages): Adjusted for the change fo match_coverages.
+
+ * src/otfopen.c (read_header_part): Handle TTC (TrueType
+ Collection).
+ (OTF_open): Accept "ttc".
+
+2009-11-13 Kenichi Handa <handa@m17n.org>
+
+ * src/otfdrive.c (match_ids_backward): New function.
+ (match_chain_ids): Call match_ids_backward for backward matching.
+
+ * example/otfview.c (code, code_label, code_list): New variables.
+ (update_seq_area): Display code list.
+ (create_widgets): Create widgets code, code_label, code_list.
+
+2009-11-09 Kenichi Handa <handa@m17n.org>
+
+ * src/otfdrive.c (get_anchor): Delete it.
+ (get_class_def_auto): Make it static.
+
+2009-11-07 Kenichi Handa <handa@m17n.org>
+
+ * example/otfview.c (update_seq_area): Accumulate adjustments by
+ ValueRecord.
+
+ * src/otfdrive.c (print_anchor, print_glyph_positioning): New
+ functions.
+ (lookup_gpos): Improve debug info printing.
+
+2009-11-04 Kenichi Handa <handa@m17n.org>
+
+ * example/otfview.c (update_seq_area): Call OTF_driver_gdef after
+ OTF_driver_cmap.
+
+ * src/otfopen.c (debug_flag): New variable
+ (set_debug_flag): New function.
+ (OTF_open, OTF_open_ft_face): Check debug flag if not yet done.
+
+ * src/otfdrive.c (debug_flag): Extern it.
+ (lookup_gsub): Print debugging info if requested. Don't ignore a
+ glyph that already has positioning_type. Be sure to increment
+ gidx.
+
+2009-10-08 Kenichi Handa <handa@m17n.org>
+
+ * src/otfopen.c (read_cmap_table): Fix bug of handling
+ seg->idDelta.
+ (OTF_close): Free app_data before free all memories.
+
+2009-10-02 Kenichi Handa <handa@m17n.org>
+
+ * src/otfopen.c (OTF_ApplicationData): New type.
+ (OTF_InternalData): New member app_data.
+ (OTF_close): Free OTF_InternalData->app_data.
+ (OTF_put_data, OTF_get_data): New functions.
+
+ * src/otf.h (OTF_put_data, OTF_get_data): Extern them.
+
+2009-09-29 Kenichi Handa <handa@m17n.org>
+
+ * src/otf.h (OTF_Feature_Callback): New type.
+ (OTF_iterate_gsub_feature): Extern it.
+
+ * src/otfdrive.c (OTF_iterate_gsub_feature): New function.
+
+2009-08-13 Kenichi Handa <handa@m17n.org>
+
+ * Version 0.9.10 released.
+
+2009-08-13 Kenichi Handa <handa@m17n.org>
+
+ * src/otf.h (LIBOTF_VERSION): Changed to "0.9.10".
+ (LIBOTF_RELEASE_NUMBER): Changed to 10.
+
+ * configure.ac: Versions changed to 0.9.10.
+
+2009-07-23 Kenichi Handa <handa@m17n.org>
+
+ * src/otf.h (OTF_cmap): New member table_index;
+
+ * src/otfopen.c (read_cmap_table): Set cmap->table_index.
+
+ * src/otfdrive.c (lookup_encoding_0, lookup_encoding_2)
+ (lookup_encoding_4, lookup_encoding_6, lookup_encoding_8)
+ (lookup_encoding_10, lookup_encoding_12): Arguments and return
+ value changed.
+ (lookup_cmap_func): New function type.
+ (lookup_cmap_func_table): New variable.
+ (get_GlyphID): New function.
+ (get_uvs_glyph): Call get_GlyphID instead of directly accessing
+ cmal->unicode_table.
+ (OTF_drive_cmap, OTF_drive_cmap2): Call one of lookup functions in
+ lookup_cmap_func_table.
+
+2009-07-10 Kenichi Handa <handa@m17n.org>
+
+ * example/otfview.c (update_seq_area): Drive features of the
+ correct script and langsys.
+
+2009-03-03 Kenichi Handa <handa@m17n.org>
+
+ * Version 0.9.9 released.
+
+2009-03-03 Kenichi Handa <handa@m17n.org>
+
+ * src/otf.h (LIBOTF_VERSION): Changed to "0.9.9".
+ (LIBOTF_RELEASE_NUMBER): Changed to 9.
+
+2009-03-02 Kenichi Handa <handa@m17n.org>
+
+ * configure.ac: Versions changed to 0.9.9.
+
+2009-02-26 Kenichi Handa <handa@m17n.org>
+
+ * src/otfopen.c (free_stream): Check stream->buf before freeing
+ it.
+ (read_gdef_table): Do nothing if stream->buf is NULL.
+ (read_header_part): If a font doesn't have a GDEF table, make a
+ pseudo stream.
+
+ * src/otfdrive.c (glyph_class_table): New variable.
+ (get_class_def_auto): New function.
+ (OTF_drive_gdef): If a font doesn't have a GDEF table, use
+ get_class_def_auto.
+
+2009-02-25 Kenichi Handa <handa@m17n.org>
+
+ * src/otfopen.c (get_table_info): Always succeed for GDEF table.
+
+ * example/otfview.c (main): If ! otf, don't setup sub14.
+
+2008-12-31 Kenichi Handa <handa@m17n.org>
+
+ * src/otfdrive.c (check_cmap_uvs): Update the member
+ MGlyph.f.index.to.
+
+2008-12-29 Kenichi Handa <handa@m17n.org>
+
+ * src/otf.h (OTF_get_variation_glyphs): Extern it..
+
+ * src/otfdrive.c (OTF_get_variation_glyphs): New function.
+
+ * example/otfview.c (uvs_area, uvs_label): New variables.
+ (sub14, uvs): New variable.
+ (update_uvs_area): New function.
+ (update_seq_area): Set `glyph_id' member only when no charmap is
+ used.
+ (update_render_area): Handle a variation selector.
+ (UVSProc): New function.
+ (RenderProc): Call update_uvs_area if the font is OpenType.
+ (create_widgets): Create uvs_area widget if the font has variation
+ selector.
+ (main): Setup sub14. Set font in gc_set.
+
+2008-12-24 Kenichi Handa <handa@m17n.org>
+
+ * src/otfdrive.c (get_uvs_glyph): Complete the code.
+
+2008-12-23 Kenichi Handa <handa@m17n.org>
+
+ * example/otfview.c (update_seq_area): Call OTF_drive_cmap.
+
+ * example/otfdump.c (dump_cmap_table): Fix previous change.
+
+ * src/otfdrive.c (lookup_encoding_4): Fix typo.
+ (get_uvs_glyph): Argument changed.
+ (check_cmap_uvs): Adjusted for the above change.
+
+ * src/otfopen.c (READ_UINT24): New macro.
+ (read_cmap_uvs_table): Argument changed. Complete the code.
+ (read_cmap_table): Adjusted for the above change. Fix typo.
+
+ * src/otf.h (OTF_cmapSegment): Fix typo.
+ (OTF_EncodingSubtable4): Fix typo.
+ (OTF_UVSMapping): New type.
+ (OTF_UnicodeValueRange): New type.
+ (OTF_VariationSelectorRecord): New type.
+ (OTF_EncodingSubtable14): Fix previous change.
+
+2008-12-22 Kenichi Handa <handa@m17n.org>
+
+ * example/otfdump.c (dump_cmap_table): Handle format 14.
+
+ * src/otfdrive.c (check_cmap_uvs): New function. Not yet completed.
+ (UVS_P): New macro.
+ (OTF_drive_cmap): Check UVS (Unicode Variation Sequences).
+ (get_uvs_glyph): New function.
+
+ * src/otfopen.c (read_cmap_uvs_table): New function.
+ (read_cmap_table): Handle format 14 (Unicode Variation Sequences).
+ Not yet completed.
+
+ * src/otf.h (OTF_EncodingSubtable14): New type.
+ (OTF_EncodingSubtable): New union member f.f14.
+
+2008-12-03 Kenichi Handa <handa@m17n.org>
+
+ * example/otfview.c (update_seq_area): Call OTF_drive_gpos2
+ instead of OTF_drive_gpos. Handle the accumulated positioning.
+
+ * src/otfdrive.c (setup_lookup_flags): The last argument changed
+ to lookup_flags. Just set the elements to 1 or 0.
+ (gstring_insert_for_gpos): New function.
+ (lookup_gpos): New arg accumulate. Insert pseudo glyphs to
+ accumulate positioning if necessary.
+ (OTF_drive_gsub_internal): Adjusted for the change of
+ setup_lookup_flags.
+ (OTF_drive_gpos_internal): Renamed from OTF_drive_gpos. Adjusted
+ for the change of setup_lookup_flags and lookup_gpos.
+ (OTF_drive_gpos): Just call OTF_drive_gpos_internal with
+ accumulate == 0.
+ (OTF_drive_gpos2): New function.
+
+ * src/otf.h (OTF_drive_gpos2): Extern it.
+
+2008-11-27 Simon Zamecnik <zamecnik@ui42.sk> (tiny change)
+
+ * src/otfdrive.c (setup_lookup_indices): New arg LangSys.
+ (OTF_drive_gsub_internal, OTF_drive_gpos): Adjusted for the above
+ change.
+
+2008-07-01 Kenichi Handa <handa@m17n.org>
+
+ * src/otfopen.c (make_stream, setup_stream)
+ (make_stream_from_ft_face, free_stream, read_offset_table): Make
+ them static.
+
+2008-06-29 Kenichi Handa <handa@m17n.org>
+
+ * Version 0.9.8 released.
+
+2008-06-29 Kenichi Handa <handa@m17n.org>
+
+ * configure.ac: Versions changed to 0.9.8.
+
+ * example/otfview.c (DEVICE_DELTA): Handle an invalid table.
+
+ * example/otfdump.c (dump_device_table): Handle an invalid table.
+
+ * src/otfopen.c (read_device_table): Accept an invalid table.
+
+2007-12-28 Kenichi Handa <handa@ni.aist.go.jp>
+
+ * Version 0.9.7 released.
+
+2007-12-28 Kenichi Handa <handa@ni.aist.go.jp>
+
+ * configure.ac: Versions changed to 0.9.7.
+
+2007-12-20 Kenichi Handa <handa@ni.aist.go.jp>
+
+ * src/otfdrive.c (gstring_subst): If a glyph is changed, set the
+ character code to 0, and update GlyphClass.
+
+2007-10-29 Kenichi Handa <handa@m17n.org>
+
+ * example/otfdump.c (dump_chain_class_set_list): Ignore an element
+ whose offset is zero.
+
+2007-09-06 Kenichi Handa <handa@m17n.org>
+
+ * src/otfdrive.c (lookup_gpos): Ignore mark glyphs while
+ processing GPOS_MarkBase1.
+
+2007-08-17 Kenichi Handa <handa@m17n.org>
+
+ * src/otfdrive.c (lookup_gpos): Fix handling of IGNORED_GLYPH.
+
+2007-08-06 Kenichi Handa <handa@m17n.org>
+
+ * src/otfdrive.c (gstring_subst): If otf->cmap is NULL, set
+ character code of a glyph to 0.
+ (OTF_drive_gsub): If otf->cmap is NULL, try to load it.
+
+2007-07-13 Kenichi Handa <handa@m17n.org>
+
+ * Version 0.9.6 released.
+
+2007-07-13 Kenichi Handa <handa@m17n.org>
+
+ * configure.ac: Updated to 0.9.6.
+
+ * src/otf.h (LIBOTF_VERSION): Updated to 0.9.6.
+ (LIBOTF_RELEASE_NUMBER): Updated to 6.
+
+2007-07-09 Kenichi Handa <handa@m17n.org>
+
+ * src/otfdrive.c (gstring_subst): Remove a glyph if it is ignored
+ because of 0 glyph ID.
+
+2007-01-09 Kenichi Handa <handa@m17n.org>
+
+ * src/otf.h: Adjusted for C++. Adjusted many prototypes to
+ contain `const' qualifiers.
+
+ * src/otferror.h (otf__error): Add `const' qualifier.
+
+ * src/otferror.c (otf__error, OTF_perror): Add `const' qualifiers.
+
+ * src/otfdrive.c: Add many `const' qualifiers.
+
+ * src/otfopen.c: Add many `const' qualifiers.
+
+2006-07-25 Kenichi Handa <handa@m17n.org>
+
+ * Version 0.9.5 released.
+
+2006-07-25 Kenichi Handa <handa@m17n.org>
+
+ * src/otfdrive.c (gstring_subst): Setup all members of struct
+ OTF_Glyph.
+ (lookup_gsub): Call gstring_subst with correct args.
+
+2006-07-19 Kenichi Handa <handa@m17n.org>
+
+ * libotf.pc.in: New file.
+
+ * Makefile.am (pkgconfigdir, pkgconfig_DATA): New variables.
+
+ * configure.ac: Updated to 0.9.5.
+ (FREETYPE_INC, FREETYPE_LD_FLAGS): AC_SUBST them.
+ (AC_CONFIG_FILES): Include libotf.pc.
+
+ * libotf-config.in: Include @FREETYPE_INC@ and @FREETYPE_LD_FLAGS@
+ in output.
+
+2006-07-18 Kenichi Handa <handa@m17n.org>
+
+ * example/otfview.c (bitmap): Array increated to cover full
+ Unicode.
+ (fontindex): New variable.
+ (update_glyph_area): Adjusted for the change of `bitmap'.
+ (GlyphProc): Likewise.
+ (help): New function.
+ (main): Accept a new 2nd arg INDEX.
+
+2006-07-14 Kenichi Handa <handa@m17n.org>
+
+ * src/otfopen.c: Include FT_TRUETYPE_TABLES_H.
+ (make_stream): New arg name. Caller changed.
+ (setup_stream): Delete arg name.
+ (make_stream_from_ft_face): New function.
+ (read_cmap_table): Fix typo (`i'->`j').
+ (read_header_part): New arg face. Caller changed.
+ (OTF_open_ft_face): New function.
+
+ * src/otf.h (LIBOTF_VERSION): Updated to 0.9.5.
+ (LIBOTF_RELEASE_NUMBER): Updated to 5.
+ (OTF_open_ft_face): Extern it.
+
+2006-07-11 Kenichi Handa <handa@m17n.org>
+
+ * src/otf.h (OTF_ERROR_FT_FACE): New macro.
+
+2006-07-07 Kenichi Handa <handa@m17n.org>
+
+ * src/otf.h (OTF_Anchor): Distinguish XDeviceTable and
+ YDeviceTable.
+
+2006-06-23 Kenichi Handa <handa@m17n.org>
+
+ * example/otfview.c (update_glyph_area): Don't use none_pixmap for
+ glyph index 0 if charmap_index is negative.
+
+ * example/otftobdf.c (main): Call dump_image with the arg full as 0.
+
+ * src/otfopen.c (read_table_directory): Fix setting of tag name.
+
+2006-02-15 Kenichi Handa <handa@m17n.org>
+
+ * example/otfview.c (DumpProc): Fix handling of non-existing glyph.
+ (create_otf_script_widgets): Fix typo; gsub -> gpos.
+
+2006-02-10 Kenichi Handa <handa@m17n.org>
+
+ * src/otfopen.c (read_table_directory): Fix setting of
+ OTF_TableDirectory->name.
+
+2006-02-07 Kenichi Handa <handa@m17n.org>
+
+ * example/otfview.c (DumpProc): Fix calculation of x/y offsets.
+
+2006-01-27 Kenichi Handa <handa@m17n.org>
+
+ * example/otfview.c (DumpProc): Completely re-written to produce
+ PostScirpt instead of PBM.
+
+2005-12-22 Kenichi Handa <handa@m17n.org>
+
+ * Version 0.9.4 released.
+
+ * src/otf.h (LIBOTF_VERSION): Updated to "0.9.4"
+ (LIBOTF_RELEASE_NUMBER): Update to 4.
+
+2005-12-22 Kenichi Handa <handa@m17n.org>
+
+ * example/otfview.c (update_glyph_area): Use non_pixmap for
+ non-existing glyphs.
+
+2005-11-22 Kenichi Handa <handa@m17n.org>
+
+ * example/otfview.c (main) [! HAVE_X11_XAW_COMMAND_H]: Fix args to
+ fprintf.
+
+ * configure.ac: Use AC_CHECK_HEADERS instead of AC_CHECK_HEADER.
+
+2005-09-02 Kenichi Handa <handa@m17n.org>
+
+ * example/Makefile.am (otfview_LDFLAGS): Use @X11_XT_XAW_XMU@
+ instead of directory listing libraries.
+
+ * autogen.sh: Run automake with -a -c.
+
+ * configure.ac (AC_INIT): Version updated to 0.9.4.
+ (AM_INIT_AUTOMAKE): Likewise.
+ (X11_XT_XAW_XMU): New variable. Set to a library list for Xaw if
+ X11 is available.
+
+2005-07-11 Kenichi Handa <handa@m17n.org>
+
+ * src/otfdrive.c (OTF_drive_gsub_internal): Call OTF_get_table
+ unconditionally.
+ (OTF_drive_gpos): Likewise.
+
+ * src/otfopen.c (read_gsub_gpos_table): Set *table->address earlier.
+ (OTF_check_features): Set script_list and feature_list according
+ to gsubp. Even if failed in getting features, if all requested
+ features are negative, return 1.
+
2005-06-29 Kenichi Handa <handa@m17n.org>
* example/otfview.c (get_features): Don't return "*" even if all
* Version 0.9 released.
\f
-Copyright (C) 2003, 2004
+Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
National Institute of Advanced Industrial Science and Technology (AIST)
Registration Number H15PRO112