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