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