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