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