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