ChangeLog 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663
  1. 2016-09-08 Werner Lemberg <[email protected]>
  2. * Version 2.7 released.
  3. =======================
  4. Tag sources with `VER-2-7'.
  5. * docs/VERSION.TXT: Add entry for version 2.7.
  6. * README, Jamfile (RefDoc), builds/windows/vc2005/freetype.vcproj,
  7. builds/windows/vc2005/index.html,
  8. builds/windows/vc2008/freetype.vcproj,
  9. builds/windows/vc2008/index.html,
  10. builds/windows/vc2010/freetype.vcxproj,
  11. builds/windows/vc2010/index.html,
  12. builds/windows/visualc/freetype.dsp,
  13. builds/windows/visualc/freetype.vcproj,
  14. builds/windows/visualc/index.html,
  15. builds/windows/visualce/freetype.dsp,
  16. builds/windows/visualce/freetype.vcproj,
  17. builds/windows/visualce/index.html,
  18. builds/wince/vc2005-ce/freetype.vcproj,
  19. builds/wince/vc2005-ce/index.html,
  20. builds/wince/vc2008-ce/freetype.vcproj,
  21. builds/wince/vc2008-ce/index.html: s/2.6.5/2.7/, s/265/27/.
  22. * include/freetype/freetype.h (FREETYPE_MINOR): Set to 7.
  23. (FREETYPE_PATCH): Set to 0.
  24. * builds/unix/configure.raw (version_info): Set to 18:6:12.
  25. * CMakeLists.txt (VERSION_MINOR): Set to 7.
  26. (VERSION_PATCH): Set to 0.
  27. * docs/CHANGES: Updated.
  28. 2016-09-08 Werner Lemberg <[email protected]>
  29. * src/truetype/ttinterp.c: Include `ttgxvar.h'.
  30. This fixes the `multi' build.
  31. 2016-09-08 Werner Lemberg <[email protected]>
  32. [autofit] Another improvement to Armenian support.
  33. Suggested by Hrant H Papazian <[email protected]>.
  34. * src/autofit/afscript.h: Use better suited characters to derive
  35. default stem widths.
  36. 2016-09-07 Alexei Podtelezhnikov <[email protected]>
  37. * src/smooth/ftgrays.c (gray_hline): Microptimize.
  38. 2016-09-06 Alexei Podtelezhnikov <[email protected]>
  39. [smooth] Operate in absolute bitmap coordinates.
  40. Simpler bitmap addressing improves performance by 1.5%.
  41. * src/smooth/ftgrays.c (gray_TWorker): Remove count fields.
  42. (gray_dump_cells, gray_find_cell, gray_set_cell, gray_hline,
  43. gray_sweep, gray_convert_glyph, gray_raster_render): Updated.
  44. 2016-09-06 Alexei Podtelezhnikov <[email protected]>
  45. [smooth] Improve contour start (take 2).
  46. * src/smooth/ftgrays.c (gray_move_to): Call `gray_set_cell' directly
  47. instead of...
  48. (gray_start_cell): ... this function, which is removed.
  49. (gray_convert_glyph): Make initial y-coordinate invalid.
  50. 2016-09-06 Werner Lemberg <[email protected]>
  51. [type1] MM fonts support exactly zero named instances (#48748).
  52. * src/type1/t1load.c (T1_Get_MM_Var): Set `num_namedstyles' to zero.
  53. 2016-09-06 Jonathan Kew <[email protected]>
  54. [cff] Fix uninitialized memory.
  55. Problem reported as
  56. https://bugzilla.mozilla.org/show_bug.cgi?id=1270288
  57. * src/cff/cf2interp.c (cf2_interpT2CharString): Initialize `storage'
  58. array to handle a `get' opcode without a previous `put'.
  59. 2016-09-05 Alexei Podtelezhnikov <[email protected]>
  60. * src/smooth/ftgrays.c (gray_move_to, gray_start_cell): Revert.
  61. 2016-09-05 Alexei Podtelezhnikov <[email protected]>
  62. [smooth] Improve contour start.
  63. * src/smooth/ftgrays.c (gray_move_to): Call `gray_set_cell' directly
  64. instead of...
  65. (gray_start_cell): ... this function, which is removed.
  66. 2016-09-05 Werner Lemberg <[email protected]>
  67. [cff] Fix memory initialization.
  68. * src/cff/cf2stack.c (cf2_stack_init): Use `FT_NEW'. The `Q'
  69. variants of FreeType's memory allocation macros don't do zeroing.
  70. 2016-09-05 Werner Lemberg <[email protected]>
  71. [ftrandom] Minor improvements.
  72. * src/tools/ftrandom/ftrandom.c (_XOPEN_SOURCE): New macro, set to
  73. 500.
  74. * src/tools/ftrandom/Makefile (CFLAGS): Split off include
  75. directories to ...
  76. (INCLUDES): ... this new variable.
  77. (LDFLAGS): New variable.
  78. (ftrandom.o, ftrandom): Updated.
  79. 2016-09-05 Werner Lemberg <[email protected]>
  80. [autofit] Improve Armenian support.
  81. Thanks to Hrant H Papazian <[email protected]> for help.
  82. * src/autofit/afblue.dat (AF_BLUE_STRING_ARMENIAN_*): Improve
  83. selection of characters.
  84. * src/autofit/afblue.c, src/autofit/afblue.h: Regenerated.
  85. 2016-09-04 Werner Lemberg <[email protected]>
  86. [ftrandom] Improve Makefile.
  87. It now supports both a normal build (`./configure && make') and a
  88. development build (`make devel').
  89. * src/tools/ftrandom/Makefile (VPATH): Set it so that
  90. `libfreetype.a' gets searched in both `objs' (for the development
  91. build) and `objs/.libs' (for a normal build which uses libtool).
  92. (LIBS): Add missing libraries.
  93. (ftrandom.o): New rule.
  94. (ftrandom): Use automatic variables.
  95. 2016-09-03 Werner Lemberg <[email protected]>
  96. [truetype] More fixes for handling of GX deltas.
  97. Problems reported by Bob Taylor <[email protected]>.
  98. * src/truetype/ttgxvar.c (TT_Vary_Apply_Glyph_Deltas): Fix rough
  99. sanity test for glyph variation array header size.
  100. Always set stream position before reading packed x and y deltas.
  101. Fix thinko w.r.t. `localpoints' array.
  102. 2016-09-03 Werner Lemberg <[email protected]>
  103. [ftrandom] Various fixes.
  104. * src/tools/ftrandom/ftrandom.c (GOOD_FONTS_DIR): Provide better
  105. default.
  106. (error_fraction): Make it of type `double' to work as advertized –
  107. this was completely broken.
  108. Update all related code.
  109. (error_count, fcnt): Make it unsigned to fix compiler warnings.
  110. Update all related code.
  111. (fontlist): Change `len' member to `long' to fix compiler warnings.
  112. (FT_MoveTo, FT_LineTo, FT_ConicTo, FT_CubicTo, abort_test): Tag
  113. unused variables.
  114. (TestFace, FindFonts, copyfont, do_test): Fix compiler warnings.
  115. (ExecuteTest): Ditto.
  116. Call `FT_Done_FreeType'.
  117. (getErrorCnt): Replace `ceil' with an ordinary cast to `unsigned
  118. int'.
  119. (usage): Improve output.
  120. (main): Fix compiler warnings.
  121. * src/tools/ftrandom/README: Updated.
  122. 2016-09-03 Werner Lemberg <[email protected]>
  123. [base] Avoid negative bitmap stroke dimensions (#48985).
  124. * src/base/ftobjs.c (FT_Open_Face): Check whether negation was
  125. actually successful. For example, this can fail for value
  126. -32768 if the type is `signed short'. If there are problems,
  127. disable the stroke.
  128. 2016-09-03 Werner Lemberg <[email protected]>
  129. [cff] Avoid null pointer passed to FT_MEM_COPY (#48984).
  130. * src/cff/cffload.c (cff_index_get_name): Check `byte_len'.
  131. 2016-09-02 Werner Lemberg <[email protected]>
  132. [unix] Enable 64bit support in file system access (#48962).
  133. * builds/unix/configure.raw: Call `AC_SYS_LARGEFILE'.
  134. 2016-09-02 Werner Lemberg <[email protected]>
  135. [sfnt] Avoid left shift of negative value (#48980).
  136. * src/sfnt/ttsbit.c (tt_sbit_decoder_load_bit_aligned): Use unsigned
  137. constant.
  138. 2016-09-02 Werner Lemberg <[email protected]>
  139. * src/smooth/ftgrays.c (gray_hline): Fix clang compiler warnings.
  140. 2016-09-02 Werner Lemberg <[email protected]>
  141. Some preparations for the next release.
  142. * include/freetype/config/ftoption.h
  143. (TT_CONFIG_OPTION_SUBPIXEL_HINTING): Enable.
  144. * docs/CHANGES: Updated.
  145. 2016-09-01 Alexei Podtelezhnikov <[email protected]>
  146. [smooth] Simplify span rendering more.
  147. It turns out that there is significant cost associated with `FT_Span'
  148. creation and calls to `gray_render_span' because it happerns so
  149. frequently. This removes these steps from our internal use but leaves
  150. it alone for `FT_RASTER_FLAG_DIRECT" to preserve API. The speed gain
  151. is about 5%.
  152. * src/smooth/ftgrays.c (gray_render_span): Removed. The code is
  153. migrated to...
  154. (gray_hline): ... here.
  155. 2016-08-30 Alexei Podtelezhnikov <[email protected]>
  156. [smooth] Streamline pixmap drawing a bit more.
  157. Zero coverage is unlikely (1 out of 256) to warrant checking. This
  158. gives 0.5% speed improvement in rendering simple glyphs.
  159. * src/smooth/ftgrays.c (gray_hline, gray_render_span): Remove checks.
  160. 2016-08-29 Alexei Podtelezhnikov <[email protected]>
  161. [smooth] Streamline pixmap drawing.
  162. This gives 2% speed improvement in rendering simple glyphs.
  163. * src/smooth/ftgrays.c (TPixmap): Reduced pixmap descriptor with a
  164. pointer to its bottom-left and pitch to be used in...
  165. (gray_TWorker): ... here.
  166. (gray_render_span): Move pixmap flow check from here...
  167. (gray_raster_render): .. to here.
  168. 2016-08-27 Alexei Podtelezhnikov <[email protected]>
  169. [smooth] Reduce stack of band boundaries.
  170. * src/smooth/ftgrays.c (gray_TBand): Removed.
  171. (gray_convert_glyph): Updated to stack band boundaries concisely.
  172. 2016-08-26 Werner Lemberg <[email protected]>
  173. * src/cid/cidload.c (cid_face_open): Improve handling of `SDBytes'.
  174. 2016-08-26 Werner Lemberg <[email protected]>
  175. [cid] Fix commit from 2016-05-16.
  176. * src/cid/cidparse.c (cid_parser_new): Fix off-by-one errors.
  177. 2016-08-26 Werner Lemberg <[email protected]>
  178. [sfnt] Cache offset and size to bitmap data table.
  179. This commit avoids `EBDT' and friends being looked up again and
  180. again while loading a single embedded bitmap.
  181. * include/freetype/internal/tttypes.h (TT_FaceRec)
  182. [TT_CONFIG_OPTION_EMBEDDED_BITMAPS]: New fields `ebdt_start' and
  183. `ebdt_size'.
  184. * src/sfnt/ttsbit.c (tt_sbit_decoder_init): Move table lookup to ...
  185. (tt_face_load_sbit): ... this function; also store the table size
  186. and offset.
  187. 2016-08-26 Alexei Podtelezhnikov <[email protected]>
  188. * src/smooth/ftgrays.c (gray_raster_render): Minor tweaks.
  189. 2016-08-26 Werner Lemberg <[email protected]>
  190. [type1] Fix heap buffer overflow.
  191. Reported as
  192. https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=36
  193. * src/type1/t1load.c (parse_charstrings): Reject fonts that don't
  194. contain glyph names.
  195. 2016-08-25 Werner Lemberg <[email protected]>
  196. [sfnt] Fix previous commit (#48901).
  197. * src/sfnt/ttcmap.c (tt_cmap4_char_map_binary): Thinkos.
  198. 2016-08-25 Werner Lemberg <[email protected]>
  199. [sfnt] Speed up handling of invalid format 4 cmaps.
  200. * src/sfnt/ttcmap.c (tt_cmap4_next, tt_cmap4_char_map_binary): Add
  201. tests for `num_glyph' from `tt_cmap4_char_map_linear'.
  202. 2016-08-25 Werner Lemberg <[email protected]>
  203. * include/freetype/internal/ftdriver.h: Remove unused typedefs.
  204. 2016-08-22 Alexei Podtelezhnikov <[email protected]>
  205. [smooth] Simplify span rendering.
  206. This removes unnecessary complexity of span merging and buffering.
  207. Instead, the spans are rendered as they come, speeding up the
  208. rendering by about 5% as a result.
  209. * src/smooth/ftgrays.c [FT_MAX_GRAY_SPANS]: Macro removed.
  210. (gray_TWorker): Remove span buffer and related fields.
  211. (gray_sweep, gray_hline): Updated.
  212. * include/freetype/ftimage.h: Remove documentation note about
  213. `FT_MAX_GRAY_SPANS', which was never in `ftoption.h' and is now gone.
  214. 2016-08-16 Werner Lemberg <[email protected]>
  215. [truetype] Fix `MPS' instruction.
  216. According to Greg Hitchcock, MPS in DWrite really returns the point
  217. size.
  218. * src/truetype/ttobjs.h (TT_SizeRec): Add `point_size' member.
  219. * src/truetype/ttdriver.c (tt_size_request): Set `point_size'.
  220. * src/truetype/ttinterp.h (TT_ExecContextRec): Add `pointSize'
  221. member.
  222. * src/truetype/ttinterp.c (TT_Load_Context): Updated.
  223. (Ins_MPS): Fix instruction.
  224. 2016-08-16 Werner Lemberg <[email protected]>
  225. [lzw] Optimize last commit.
  226. * src/lzw/ftzopen.c (ft_lzwstate_get_code): Move check into
  227. conditional clause.
  228. 2016-08-16 Werner Lemberg <[email protected]>
  229. [lzw] Avoid invalid left shift.
  230. Reported as
  231. https://bugzilla.mozilla.org/show_bug.cgi?id=1295366
  232. * src/lzw/ftzopen.c (ft_lzwstate_get_code): Limit `num_bits'.
  233. 2016-08-16 Werner Lemberg <[email protected]>
  234. [lzw] Avoid buffer overrun.
  235. Reported as
  236. https://bugzilla.mozilla.org/show_bug.cgi?id=1273283
  237. * src/lzw/ftzopen.c (ft_lzwstate_refill): Ensure `buf_size' doesn't
  238. underflow.
  239. 2016-08-16 Werner Lemberg <[email protected]>
  240. [truetype] Fix compiler warning.
  241. * src/truetype/ttgload.c (load_truetype_glyph): Add cast.
  242. 2016-08-13 Werner Lemberg <[email protected]>
  243. [winfonts] Avoid zero bitmap width and height.
  244. Reported as
  245. https://bugzilla.mozilla.org/show_bug.cgi?id=1272173
  246. * src/winfonts/winfnt.c (FNT_Face_Init): Check zero pixel height.
  247. (FNT_Load_Glyph): Check for zero pitch.
  248. 2016-08-11 Alexei Podtelezhnikov <[email protected]>
  249. * src/truetype/ttinterp.c (Pop_Push_Count): Revert changes.
  250. 2016-08-11 Alexei Podtelezhnikov <[email protected]>
  251. * src/truetype/ttinterp.c (TT_RunIns): Minor and formatting.
  252. 2016-08-11 Alexei Podtelezhnikov <[email protected]>
  253. * src/truetype/ttinterp.c (Pop_Push_Count): Fix some entries.
  254. 2016-08-10 Peter Klotz <[email protected]>
  255. * src/smooth/ftgrays.c (gray_hline): Fix uninitialized access.
  256. 2016-08-10 Werner Lemberg <[email protected]>
  257. [sfnt] Use correct type for `italicAngle' field (#48732).
  258. * src/sfnt/ttload.c (tt_face_load_post): Fix types.
  259. 2016-08-06 Jon Spencer <[email protected]>
  260. [sfnt] Fix `FT_Get_Advance' for bitmap strikes.
  261. `FT_Get_Advance' returns 0 for bitmap fonts. It first gets the
  262. advance value from the font table and then scales it by the
  263. `font->size->metrics->x_scale' field. But `FT_Select_Size' doesn't
  264. set that value for bitmap fonts and the advance gets scaled to zero.
  265. Taken from
  266. https://github.com/behdad/harfbuzz/issues/252
  267. * src/sfnt/ttsbit.c (tt_face_load_strike_metrics)
  268. <TT_SBIT_TABLE_TYPE_EBLC>: Set scale values.
  269. 2016-08-06 Behdad Esfahbod <[email protected]>
  270. [truetype] Fix GX variation handling of composites.
  271. * src/truetype/ttgload.c (load_truetype_glyph)
  272. [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Check `ARGS_ARE_XY_VALUES' flag.
  273. 2016-08-05 Alexei Podtelezhnikov <[email protected]>
  274. [smooth] Minor refactoring.
  275. * src/smooth/ftgrays.c (gray_render_scanline, gray_render_line):
  276. Updated.
  277. 2016-07-29 Werner Lemberg <[email protected]>
  278. [sfnt, truetype] Don't abort on invalid `maxComponentDepth'.
  279. Since 2016-05-16 we detect infinite recursion directly.
  280. * src/sfnt/ttload.c (tt_face_load_maxp): Don't adjust
  281. `maxComponentDepth'.
  282. * src/truetype/ttgload.c (load_truetype_glyph): Don't abort if
  283. `maxComponentDepth' is not valid. Instead, simply adjust its value
  284. and emit a tracing message.
  285. 2016-07-26 Werner Lemberg <[email protected]>
  286. * src/autofit/aflatin.c (af_latin_metrics_scale_dim): Minor.
  287. No functional change.
  288. 2016-07-22 Hin-Tak Leung <[email protected]>
  289. [truetype] Record the end of IDEFs.
  290. To match the logic in FDEF. The value of the end is only used for
  291. bound-checking in `Ins_JMPR', so it may not have been obvious that
  292. it was not recorded. Tested (as part of Font Validator 2.0) all the
  293. fonts on Fedora and did not see any change.
  294. * src/truetype/ttinterp.c (Ins_IDEF): Updated.
  295. 2016-07-19 Werner Lemberg <[email protected]>
  296. [truetype] Sanitizer fix, second try.
  297. * src/truetype/ttgxvar.c (ft_var_readpackedpoints): Fix boundary
  298. tests and use only one slot more.
  299. 2016-07-19 Werner Lemberg <[email protected]>
  300. [truetype] Sanitizer fix.
  301. * src/truetype/ttgxvar.c (ft_var_readpackedpoints): Increase array
  302. to fix nested loops.
  303. 2016-07-18 Werner Lemberg <[email protected]>
  304. [truetype] Make GETDATA work only for GX fonts.
  305. * src/truetype/ttinterp.c (opcode_name): Updated.
  306. (Ins_GETDATA): Only define for `TT_CONFIG_OPTION_GX_VAR_SUPPORT'.
  307. (TT_RunIns): Updated.
  308. 2016-07-17 Werner Lemberg <[email protected]>
  309. [truetype] Add support for Apple's
  310. GETDATA[], opcode 0x92
  311. bytecode instruction. It always returns 17, and we have absolutely
  312. no idea what it is good for...
  313. * src/truetype/ttinterp.c (Pop_Push_Count, opcode_name): Updated.
  314. (Ins_GETDATA): New function.
  315. (TT_RunIns): Add it.
  316. 2016-07-16 Werner Lemberg <[email protected]>
  317. [truetype] Add bytecode support for GX variation fonts.
  318. This commit implements undocumented (but confirmed) stuff from
  319. Apple's old bytecode engine.
  320. GETVARIATION[], opcode 0x91
  321. This opcode pushes normalized variation coordinates for all axes
  322. onto the stack (in 2.14 format). Coordinate of first axis gets
  323. pushed first.
  324. GETINFO[], selector bit 3
  325. If GX variation support is enabled, bit 10 of the result is set
  326. to 1.
  327. * src/truetype/ttinterp.c: Include FT_MULTIPLE_MASTERS_H.
  328. (opcode_name) [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Updated.
  329. (Ins_GETINFO) [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Handle selector
  330. bit 3, checking support for variation glyph hinting.
  331. (Ins_GETVARIATION) [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: New function
  332. to implement opcode 0x91.
  333. (TT_RunIns) [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Handle opcode 0x91.
  334. 2016-07-16 Werner Lemberg <[email protected]>
  335. [truetype] Fix GETINFO bytecode instruction.
  336. * src/truetype/ttinterp.c (Ins_GETINFO): Fix return value for
  337. stretching information.
  338. 2016-07-16 Behdad Esfahbod <[email protected]>
  339. [truetype] Make all glyphs in `Zycon' GX font work.
  340. * src/truetype/ttgxvar.c (ft_var_readpackedpoints): Fix boundary
  341. tests.
  342. 2016-07-16 Werner Lemberg <[email protected]>
  343. [truetype] Fix GX delta tracing.
  344. * src/truetype/ttgxvar.c (TT_Vary_Apply_Glyph_Deltas): Trace
  345. relative point movements.
  346. 2016-07-16 Behdad Esfahbod <[email protected]>
  347. [truetype] More fixes for GX.
  348. This finally fixes the rendering of the cyclist and the lizard in
  349. the `Zycon' font.
  350. * src/truetype/ttgxvar.c (ft_var_readpackedpoints): `first' point
  351. index is always cumulative.
  352. (tt_handle_deltas): Rename to...
  353. (tt_interpolate_deltas): ... This.
  354. Add new parameter for output point array.
  355. Update caller.
  356. (TT_Vary_Apply_Glyph_Deltas): Add `points_out' array; it now holds
  357. the intermediate results of `tt_interpolate_deltas' that are to be
  358. added to `outline->points'.
  359. 2016-07-15 Werner Lemberg <[email protected]>
  360. * src/autofit/aflatin.c (af_latin_hints_compute_segments): Thinko.
  361. `max_pos' is always larger than `min_pos' so `FT_ABS' is not needed.
  362. Reported by Alexei.
  363. 2016-07-16 Nikolaus Waxweiler <[email protected]>
  364. * src/truetype/ttinterp.c (Ins_MIRP): Fix copy-and-paste error.
  365. Problem reported by Hin-Tak Leung.
  366. 2016-07-15 Werner Lemberg <[email protected]>
  367. [autofit] Update and improve segment and edge tracing.
  368. * src/autofit/afhints.c (af_glyph_hints_dump_segments): Trace
  369. `delta' also.
  370. Don't show first point of segment as a replacement for `pos'; this
  371. is (a) misleading, since the difference to `pos' can be almost
  372. arbitrarily large in corner cases, and (b) it is better to have all
  373. segment data in font units instead of a single value given in output
  374. space coordinates.
  375. Improve layout.
  376. (af_glyph_hints_dump_edges): Show px->units and units->px conversion
  377. values for convenience.
  378. Improve layout.
  379. 2016-07-15 Werner Lemberg <[email protected]>
  380. [autofit] For edges, reject segments wider than 1px (#41334).
  381. * src/autofit/afhints.h (AF_SegmentRec): New member `delta'.
  382. * src/autofit/aflatin.c (af_latin_hints_compute_segments): Compute
  383. `delta'.
  384. (af_latin_hints_compute_edges): Reject segments with a delta larger
  385. than 0.5px.
  386. 2016-07-14 Werner Lemberg <[email protected]>
  387. * include/freetype/freetype.h (FT_IS_NAMED_INSTANCE): New macro.
  388. 2016-07-14 Werner Lemberg <[email protected]>
  389. [sfnt] Fix `face_index' value in `FT_Face' for named instances.
  390. * src/sfnt/sfobjc.s (sfnt_init_face): Don't strip off higher 16bits.
  391. 2016-07-14 Werner Lemberg <[email protected]>
  392. * src/truetype/ttgxvar.c (TT_Vary_Apply_Glyph_Deltas): Fix tracing.
  393. 2016-07-14 Behdad Esfahbod <[email protected]>
  394. [truetype] Fix gxvar delta interpolation.
  395. The coordinates of the base font should be used for interpolation
  396. purposes, NOT the current points (i.e., the result of accumulation
  397. of previous deltas).
  398. * src/truetype/ttgxvar.c (TT_Vary_Apply_Glyph_Deltas): Initialize
  399. `points_org' before looping over all tuples.
  400. ----------------------------------------------------------------------------
  401. Copyright 2016 by
  402. David Turner, Robert Wilhelm, and Werner Lemberg.
  403. This file is part of the FreeType project, and may only be used, modified,
  404. and distributed under the terms of the FreeType project license,
  405. LICENSE.TXT. By continuing to use, modify, or distribute this file you
  406. indicate that you have read the license and understand and accept it
  407. fully.
  408. Local Variables:
  409. version-control: never
  410. coding: utf-8
  411. End: