979e6601198412235f2d0cdd64e429bfad5ac7ea
[m17n/libotf.git] / ChangeLog
1 2006-07-19  Kenichi Handa  <handa@m17n.org>
2
3         * Version 0.9.5 released.
4
5         * libotf.pc.in: New file.
6
7         * Makefile.am (pkgconfigdir, pkgconfig_DATA): New variables.
8
9         * configure.ac: Updated to 0.9.5.
10         (FREETYPE_INC, FREETYPE_LD_FLAGS): AC_SUBST them.
11         (AC_CONFIG_FILES): Include libotf.pc.
12
13         * libotf-config.in: Include @FREETYPE_INC@ and @FREETYPE_LD_FLAGS@
14         in output.
15
16 2006-07-18  Kenichi Handa  <handa@m17n.org>
17
18         * example/otfview.c (bitmap): Array increated to cover full
19         Unicode.
20         (fontindex): New variable.
21         (update_glyph_area): Adjusted for the change of `bitmap'.
22         (GlyphProc): Likewise.
23         (help): New function.
24         (main): Accept a new 2nd arg INDEX.
25
26 2006-07-14  Kenichi Handa  <handa@m17n.org>
27
28         * src/otfopen.c: Include FT_TRUETYPE_TABLES_H.
29         (make_stream): New arg name.  Caller changed.
30         (setup_stream): Delete arg name.
31         (make_stream_from_ft_face): New function.
32         (read_cmap_table): Fix typo (`i'->`j').
33         (read_header_part): New arg face.  Caller changed.
34         (OTF_open_ft_face): New function.
35
36         * src/otf.h (LIBOTF_VERSION): Updated to 0.9.5.
37         (LIBOTF_RELEASE_NUMBER): Updated to 5.
38         (OTF_open_ft_face): Extern it.
39
40 2006-07-11  Kenichi Handa  <handa@m17n.org>
41
42         * src/otf.h (OTF_ERROR_FT_FACE): New macro.
43
44 2006-07-07  Kenichi Handa  <handa@m17n.org>
45
46         * src/otf.h (OTF_Anchor): Distinguish XDeviceTable and
47         YDeviceTable.
48
49 2006-06-23  Kenichi Handa  <handa@m17n.org>
50
51         * example/otfview.c (update_glyph_area): Don't use none_pixmap for
52         glyph index 0 if charmap_index is negative.
53
54         * example/otftobdf.c (main): Call dump_image with the arg full as 0.
55
56         * src/otfopen.c (read_table_directory): Fix setting of tag name.
57
58 2006-02-15  Kenichi Handa  <handa@m17n.org>
59
60         * example/otfview.c (DumpProc): Fix handling of non-existing glyph.
61         (create_otf_script_widgets): Fix typo; gsub -> gpos.
62
63 2006-02-10  Kenichi Handa  <handa@m17n.org>
64
65         * src/otfopen.c (read_table_directory): Fix setting of
66         OTF_TableDirectory->name.
67
68 2006-02-07  Kenichi Handa  <handa@m17n.org>
69
70         * example/otfview.c (DumpProc): Fix calculation of x/y offsets.
71
72 2006-01-27  Kenichi Handa  <handa@m17n.org>
73
74         * example/otfview.c (DumpProc): Completely re-written to produce
75         PostScirpt instead of PBM.
76
77 2005-12-22  Kenichi Handa  <handa@m17n.org>
78
79         * Version 0.9.4 released.
80
81         * src/otf.h (LIBOTF_VERSION): Updated to "0.9.4"
82         (LIBOTF_RELEASE_NUMBER): Update to 4.
83
84 2005-12-22  Kenichi Handa  <handa@m17n.org>
85
86         * example/otfview.c (update_glyph_area): Use non_pixmap for
87         non-existing glyphs.
88
89 2005-11-22  Kenichi Handa  <handa@m17n.org>
90
91         * example/otfview.c (main) [! HAVE_X11_XAW_COMMAND_H]: Fix args to
92         fpintf.
93
94         * configure.ac: Use AC_CHECK_HEADERS instead of AC_CHECK_HEADER.
95
96 2005-09-02  Kenichi Handa  <handa@m17n.org>
97
98         * example/Makefile.am (otfview_LDFLAGS): Use @X11_XT_XAW_XMU@
99         instead of directory listing libraries.
100
101         * autogen.sh: Run automake with -a -c.
102
103         * configure.ac (AC_INIT): Version updated to 0.9.4.
104         (AM_INIT_AUTOMAKE): Likewise.
105         (X11_XT_XAW_XMU): New variable.  Set to a library list for Xaw if
106         X11 is available.
107
108 2005-07-11  Kenichi Handa  <handa@m17n.org>
109
110         * src/otfdrive.c (OTF_drive_gsub_internal): Call OTF_get_table
111         unconditionally.
112         (OTF_drive_gpos): Likewise.
113
114         * src/otfopen.c (read_gsub_gpos_table): Set *table->address earlier.
115         (OTF_check_features): Set script_list and feature_list according
116         to gsubp.  Even if failed in getting features, if all requested
117         features are negative, return 1.
118
119 2005-06-29  Kenichi Handa  <handa@m17n.org>
120
121         * example/otfview.c (get_features): Don't return "*" even if all
122         features are being used.
123
124         * src/otfdrive.c (OTF_drive_gsub_internal): Initialize
125         positioning_type member to 0.
126         (OTF_drive_gpos): Likewise.
127
128 2005-06-24  Kenichi Handa  <handa@m17n.org>
129
130         * src/otfopen.c (OTF_check_features): If the MSB of a feature tag
131         is set, treat it as a negation flag.
132
133 2005-06-14  Kenichi Handa  <handa@m17n.org>
134
135         * src/otfopen.c (OTF_check_features): If gsubp is zero, check gpos
136         scripts and features.  Treat feature tag 0 as wildcard.
137
138 2005-05-26  Kenichi Handa  <handa@m17n.org>
139
140         * example/otfview.c (langsys_tag): New variable.
141         (get_features): Check if rec->langsys and rec->features are not
142         NULL.
143         (update_seq_area): Delete unused var.
144         (setup_feature_rec): Setup rec->langsys correctly.  Don't allocate
145         rec->features here.
146         (compose_script_langsys, decompose_script_langsys): New functions.
147         (ScriptProc): Fix handling of the arg call_data.
148         (create_otf_script_widgets): Check all langsys.  Allocate
149         gsub.features and gpos.features here.
150         (create_otf_widgets): Delete unused var.
151
152         * example/otflist.c (print_gsub_gpos_info): Don't print
153         superfluous space.
154         (main): Delete unused variables.
155
156 2005-05-23  Kenichi Handa  <handa@m17n.org>
157
158         * src/otfopen.c (OTF_check_features): Fix indexing to
159         feature_list->Feature.
160         (OTF_tag): Handle the case that the length of NAME is short.
161
162 2005-05-21  Kenichi Handa  <handa@m17n.org>
163
164         * src/otfopen.c (OTF_get_features): If table_info doesn't have
165         stream nor address, return -1.
166
167 2005-05-19  Kenichi Handa  <handa@m17n.org>
168
169         * src/otf.h (OTF_get_scripts, OTF_get_features,
170         OTF_check_features): Extern them.
171
172         * src/otfopen.c (enum OTF_ReaderFlag): New enum.
173         (OTF_TableInfo): Change the prototype of the member `reader'.
174         Caller changed.
175         (read_head_table, read_name_table, read_cmap_table)
176         (read_gdef_table): Adjusted for the change of OTF_TableInfo.
177         (read_feature_list): Seek the stream at first.
178         (read_gsub_gpos_table): Adjusted for the change of OTF_TableInfo.
179         Pay attention to the arg `flag'.
180         (read_gsub_table, read_gpos_table): Adjusted for the change of
181         OTF_TableInfo.
182         (OTF_get_table): Likewise.
183         (OTF_get_scripts, OTF_get_features, OTF_check_features): New
184         functions.
185
186 2005-05-13  Kenichi Handa  <handa@m17n.org>
187
188         * src/otfdrive.c (lookup_gsub): Increment `gidx' correctly in the
189         case of GSUB_Ligature1.
190
191 2005-02-18  Kenichi Handa  <handa@m17n.org>
192
193         * src/otferror.c (error_message): Allocate it statically.
194         (otf__error): Don't allocate error_message dynamically.
195         (OTF_perror): Adjust for the above changes.
196
197 2005-02-17  Kenichi Handa  <handa@m17n.org>
198
199         * example/otflist.c (filter): Accept extentions ".ttc" and ".TTC".
200
201         * src/otfopen.c (read_cmap_table): Delete unsed var.
202
203         * src/otfdrive.c (gstring_subst): Correctly set temp.f.index.
204         (lookup_gsub): Fix updating gidx.
205         (gstring_subst): New arg OTF.  Callers changed.
206         (lookup_gsub): New arg OTF.  Callers changed.
207
208 2004-12-27  Kenichi Handa  <handa@m17n.org>
209
210         * Version 0.9.3 released.
211
212 2004-11-19  Kenichi Handa  <handa@m17n.org>
213
214         * libotf-config: Update to version "0.9.3".
215
216         * configure.ac (AC_INIT): Update to 0.9.3.
217         (AM_INIT_AUTOMAKE): Likewise.
218
219         * src/otf.h (LIBOTF_VERSION): Update to "0.9.3".
220         (LIBOTF_RELEASE_NUMBER): Update to 3.
221
222 2004-11-09  Kenichi Handa  <handa@m17n.org>
223
224         * src/otf.h (OTF_Glyph): Delete member alternate_set.
225         (OTF_drive_gsub_alternate): Extern it.
226
227         * src/otfdrive.c (lookup_gsub): New arg alternate_subst.  Callers
228         changed.
229         (OTF_drive_gsub_internal): Renamed from OTF_drive_gsub.
230         (OTF_drive_gsub): Just call OTF_drive_gsub_internal.
231         (OTF_drive_gsub_alternate): New function.
232
233         * example/otfview.c (alt_subst, do_alternate_subst): New
234         variables.
235         (update_seq_area): If do_alternate_subst, call
236         OTF_drive_gsub_alternate.  Correctly set advance.  Don't check
237         g->alternate_set.
238         (AltSubstProc): New function.
239         (create_widgets): Create AltSubst widget.
240
241 2004-11-08  Kenichi Handa  <handa@m17n.org>
242
243         * example/otfview.c: Include "config.h".
244
245 2004-11-02  Kenichi Handa  <handa@m17n.org>
246
247         * example/otfview.c (MAX_FEATURE_COUNT): Delete this macro.
248         (FeatureElement): New type.
249         (FeatureRec): New element num_features and parent.
250         (update_seq_area): Show alternate glyphs if any.
251         (setup_feature_rec): (Re)allocate rec->features.  Create widgets.
252         (create_otf_widgets): Don't create widgets here.
253
254         * example/otfdump.c (dump_cmap_table): Support Format 2 of cmap.
255
256         * src/otfopen.c (read_cmap_table): Support Format 2 of cmap.
257
258         * src/otfdrive.c (lookup_gsub): For Format 3, set
259         OTF_Glyph->alternate_set.
260
261         * src/otf.h (OTF_EncodingSubtable2): New members subHeaderCount
262         and glyphIndexCount.
263         (OTF_Glyph): New member alternate_set.
264
265 2004-10-27  Kenichi Handa  <handa@m17n.org>
266
267         * example/otfview.c: Pay attention to HAVE_X11_XAW_COMMAND_H.
268
269         * configure.ac: Check existence of X11/Xaw/Command.h.
270
271 2004-09-03  Kenichi Handa  <handa@m17n.org>
272
273         * src/otfdrive.c (GSTRING_INSERT): Fix size of reallocating
274         memory.
275         (lookup_gpos): For LooupType 5, fix finding a base/ligature glyph.
276
277         * example/otfview.c (update_seq_area): Use malloc and free for
278         gstring.glyphs.
279
280 2004-08-13  Kenichi Handa  <handa@m17n.org>
281
282         * Version 0.9.2 released.
283
284 2004-08-13  Kenichi Handa  <handa@m17n.org>
285
286         * src/otfdrive.c (IGNORED_GLYPH): Fix checking of MarkAttachClass.
287
288         * configure.ac: Updated to 0.9.2.
289
290         * src/otf.h (LIBOTF_VERSION): Updated to 0.9.2.
291         (LIBOTF_RELEASE_NUMBER): Updated to 2.
292
293 2004-08-09  Kenichi Handa  <handa@m17n.org>
294
295         * Version 0.9.1 released.
296
297 2004-08-09  Kenichi Handa  <handa@m17n.org>
298
299         * src/otfdrive.c (setup_lookup_indices): Fix handling of "*" in
300         features.
301
302         * example/otfview.c (update_seq_area): Call OTF_drive_gdef only
303         when otf is not NULL.
304
305 2004-08-07  Kenichi Handa  <handa@m17n.org>
306
307         * example/otfview.c (FeatureProc): Highlight selected features by
308         changing border width, not by changing fore and back color.
309         (setup_feature_rec): Setup internal height and width of widgets.
310         (create_otf_widgets): Likewise.
311
312         * src/otfdrive.c (IGNORED_GLYPH): New macro.
313         (gstring_subst, match_ids, match_chain_ids, match_classes)
314         (match_chain_classes, match_coverages, match_chain_coverages):
315         use IGNORED_GLYPH.
316         (lookup_gsub): Likewise.  Include OTF_MarkAttachmentType in flag.
317         (lookup_gpos): Likewise.
318
319 2004-08-06  Kenichi Handa  <handa@m17n.org>
320
321         * src/otfdrive.c (lookup_gsub): Fix handling of Extension lookup.
322         (lookup_gpos): Support Extension lookup.
323         (gstring_subst): Fix previous change.
324
325 2004-08-05  Kenichi Handa  <handa@m17n.org>
326
327         * src/otf.h (enum OTF_LookupFlagBit): Fix OTF_IgnoreMarks.
328
329         * example/otfview.c (update_seq_area): Fix sign of yoff.
330         Support more positioning_type.
331
332         * example/otfdump.c (dump_lookup_subtable_gpos): Add support for
333         LookupType 5.
334
335         * src/otfopen.c (read_ligature_attach): Fix for the case that an
336         offset is NULL.
337
338         * src/otfdrive.c (lookup_gpos): Add support for LookupType 5.
339         Fix handling of flag.
340         (gstring_subst): Fix previous change.
341
342 2004-08-04  Kenichi Handa  <handa@m17n.org>
343
344         * example/otfview.c (bidi, reversed): New variables.
345         (update_seq_area): Call OTF_drive_gdef.  If reversed is nonzero,
346         reorder glyphs properly.  Create pixmap if necessary.  Handle
347         OTF_XAdvance and OTF_XAdvDevice.
348         (BidiProc): New function.
349         (create_widgets): Setup bidi.
350
351         * src/otfdrive.c (gstring_subst): New arg flag.  Caller changed.
352         Ignore glyphs specified in flag.
353         (match_ids, match_classes, match_coverages): Likewise.
354         (match_chain_ids, match_chain_classes, match_chain_coverages): New
355         arg flag.
356         (lookup_gsub): Fix handling of LookupFlag.
357         (lookup_gpos): Likewise.  Support more LookupType.
358
359         * src/otf.h (OTF_LookupFlagIgnoreMask): New macro.
360
361 2004-07-29  Kenichi Handa  <handa@m17n.org>
362
363         * example/otfview.c (create_widgets): Fix width of index glyphs..
364
365 2004-07-26  Kenichi Handa  <handa@m17n.org>
366
367         * src/otfopen.c (read_value_record): Fix typo.
368
369         * src/otfdrive.c (lookup_gpos): Don't apply a GPOS feature twice.
370         (OTF_drive_gpos): Initialize values positioning_type memeber.
371         (OTF_drive_gsub): Fix previous change.
372
373 2004-07-24  Kenichi Handa  <handa@m17n.org>
374
375         * src/otfdrive.c (gstring_subst): Set `c' and `f.index' of
376         OTF_Glyph.
377         (OTF_drive_gsub): Iniialize f.index member of OTF_Glhph.
378
379         * src/otf.h (OTF_Glyph): New union member u.index.
380
381 2004-07-23  Kenichi Handa  <handa@m17n.org>
382
383         * example/otfview.c: Big change to implement selection of script.
384
385 2004-07-12  Kenichi Handa  <handa@m17n.org>
386
387         * example/otfview.c: Big change to implement driving OpenType
388         tables (GSUB and GPOS).
389
390         * src/otfdrive.c (get_langsys): If script is NULL, use the first
391         one in script_list.
392
393 2004-07-09  Kenichi Handa  <handa@m17n.org>
394
395         * src/otfdrive.c (lookup_gpos): Ignore glyphs whose ID is 0 (fix
396         for the case of LookupType 2).
397
398 2004-07-08  Kenichi Handa  <handa@m17n.org>
399
400         * src/otfopen.c (read_class_set_list): Allocate the array *set
401         by OTF_CALLOC.
402
403 2004-07-07  Kenichi Handa  <handa@m17n.org>
404
405         * src/otfdrive.c (lookup_gsub): For LookupType 5 Subformat 2, if
406         ClassSet is not defined, do nothing.
407
408 2004-06-29  Kenichi Handa  <handa@m17n.org>
409
410         * src/otfdrive.c (lookup_gsub): Fix handling of lookup type 6
411         format 3.
412
413 2004-05-28  Kenichi Handa  <handa@m17n.org>
414
415         * example/otflist.c: Include <sys/types.h> and "config.h".
416         (next_file): New function.
417         (main): Call next_file.
418
419         * configure.ac: Check functions scandir and alphasort.
420
421 2004-05-06  Kenichi Handa  <handa@m17n.org>
422
423         * example/otftobdf.c (registry): New variable.
424         (dump_header): Include registry in the font name.
425         (main): Handle the encoding arg of the format M-N.  Without this
426         arg, generate a font with raw-encoding.
427
428         * src/otfdrive.c: Include "config.h".  Delete '//' style comments.
429         (lookup_encoding_0, lookup_encoding_2, lookup_encoding_4)
430         (lookup_encoding_6, lookup_encoding_8, lookup_encoding_10)
431         (lookup_encoding_12, OTF_drive_cmap2): New functions.
432
433         * src/otfopen.c (read_name): Argument changed.  Set
434         OTF_NameRecord->ascii.  If possible, convert Unicode sequence to
435         ASCII.
436         (read_name_table): Adjusted for the change of read_name.
437         (read_cmap_table): Signal an error (not-yet-supported) if format
438         is 2.  Support for formats, 8, 10, 12.
439         (read_value_record): Clear value_record at first.
440         (read_lookup_subtable_gpos): Fix for the case subFormat is 1 and
441         2.
442         (OTF_open): Check file name extension.
443
444         * example/otflist.c: Include <otf.h>.
445         (FATAL_ERROR): New macro.
446         (print_tag, print_gsub_gpos_info, help_and_exit): New functions.
447         (main): Handle -h, --help, -l args.  Prefer family/style names
448         extracted by the otf library.
449
450 2004-03-30  Kenichi Handa  <handa@m17n.org>
451
452         * src/otfopen.c (read_value_record): Clear value_record at
453         first.
454         (read_lookup_subtable_gpos): For Lookup Type 1, read Coverage at
455         first.
456
457 2004-03-29  Kenichi Handa  <handa@m17n.org>
458
459         * example/otfdump.c (dump_lookup_subtable_gsub): For Lookup Type
460         7, fix arg to dump_lookup_subtable_gsub.
461         (dump_lookup_subtable_gpos): Support Lookup Type 9.
462
463         * autogen.sh: Run automake after autoheader.
464
465         * src/otfopen.c (OTF_close): Free otf->filename.
466
467 2004-02-01  Kenichi Handa  <handa@m17n.org>
468
469         * Version 0.9 released.
470
471 \f
472 Copyright (C) 2003, 2004
473   National Institute of Advanced Industrial Science and Technology (AIST)
474   Registration Number H15PRO112
475
476 This file is part of the m17n library.
477
478 The m17n library is free software; you can redistribute it and/or
479 modify it under the terms of the GNU Lesser General Public License
480 as published by the Free Software Foundation; either version 2.1 of
481 the License, or (at your option) any later version.
482
483 The m17n library is distributed in the hope that it will be useful,
484 but WITHOUT ANY WARRANTY; without even the implied warranty of
485 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
486 Lesser General Public License for more details.
487
488 You should have received a copy of the GNU Lesser General Public
489 License along with the m17n library; if not, write to the Free
490 Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
491 02111-1307, USA.