• C 93.2%
  • Makefile 2.1%
  • Python 1.8%
  • DIGITAL Command Language 0.8%
  • M4 0.6%
  • Other 1.4%
Find a file
Behdad Esfahbod 5336c0d4da Revert "[autofit] Derive fill orientation without a separate outline pass."
This reverts commit 1f3ab3cdce.

That commit inlined a shoelace accumulator into the `af_glyph_hints_reload`
point-setup loop on the theory that the speedup came from sharing the
traversal with that loop ("loop fusion").  An A/B/C benchmark with the
intermediate variant -- inlining reverted but
`FT_Outline_Get_Orientation` itself rewritten as a single-pass 64-bit
shoelace -- shows the inline version and the standalone version are
statistically indistinguishable (both 2.854 us/op vs the original
2.914 us/op on `ftbench -b a -f 20`, Google Sans Flex).  The entire
win is algorithmic (dropping the bbox pre-pass and the per-iteration
shifts), not from sharing the loop.

With the previous commit moving that win into `FT_Outline_Get_Orientation`
itself, the inline copy in autofit is redundant and worth removing:
the standalone call is the same speed, the public API benefits every
caller, and `af_glyph_hints_reload` keeps its single-purpose loop.

* src/autofit/afhints.c (af_glyph_hints_reload): Restore the
`FT_Outline_Get_Orientation` call; drop the inlined shoelace
accumulator.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-07-01 05:54:58 +02:00
builds * builds/windows/vc2010/index.html: Update file descriptions. 2026-05-08 05:38:23 +02:00
devel [raster] Dynamic pool allocation. 2026-05-09 14:14:48 -04:00
docs * docs/CHANGES: Draft recent changes. 2026-05-08 18:34:38 -04:00
include [truetype] Cache item-variation-store region scalars. (3/5) 2026-06-27 10:44:38 +02:00
objs * builds/windows/vc2010/freetype.vcxproj: AfterBuild copy. 2017-12-16 22:00:40 -05:00
src Revert "[autofit] Derive fill orientation without a separate outline pass." 2026-07-01 05:54:58 +02:00
subprojects * subprojects/harfbuzz.wrap: Updated. 2026-03-22 15:51:57 +01:00
tests * tests/README.md: Fix a script name. 2025-09-17 19:30:55 -04:00
.clang-format Add .clang-format file 2020-07-16 15:51:06 +02:00
.gitignore [meson] Add first regression test to FreeType 2021-06-16 10:28:47 +02:00
.gitlab-ci.yml * meson.build, .gitlab-ci.yml: Require Meson 0.60.0 or newer. 2026-06-27 06:44:10 +02:00
.gitmodules Move 'dlg' submodule to subprojects directory. 2021-02-16 14:07:18 +01:00
.mailmap .mailmap: Fix entry for Ben Wagner. 2024-05-06 21:53:24 +02:00
autogen.sh Update all copyright notices. 2026-03-11 17:27:07 +01:00
CMakeLists.txt [CMake] Fix shared library versioning on OpenBSD and NetBSD. 2026-06-04 09:08:30 -04:00
configure Update all copyright notices. 2026-03-11 17:27:07 +01:00
LICENSE.TXT Adminstrativa. 2025-05-14 09:16:57 +02:00
Makefile Update all copyright notices. 2026-03-11 17:27:07 +01:00
meson.build * meson.build: Include CMake name of libpng in dependency search. 2026-06-27 06:44:56 +02:00
meson_options.txt * meson.build, meson_option.txt: Handle new HVF driver. 2026-03-23 19:36:36 +01:00
mkfile [build] Add a Plan 9 port. 2026-04-22 09:01:21 -04:00
modules.cfg Support Hierarchical Variable Fonts (HVF) using Apple's 'libhvf' library. 2026-03-23 19:36:36 +01:00
MSBuild.rsp * MSBuild.rsp: Force console color for mintty. 2025-01-09 15:18:55 +00:00
MSBuild.sln * MSBuild.sln: Minor. 2025-06-30 09:32:19 -04:00
README * Version 2.14.3 released. 2026-03-22 16:07:10 +01:00
README.git Update all copyright notices. 2026-03-11 17:27:07 +01:00
vms_make.com Update all copyright notices. 2026-03-11 17:27:07 +01:00

FreeType 2.14.3
===============

Homepage: https://freetype.org

FreeType is a freely available software library to render fonts.

It  is  written  in  C,   designed  to  be  small,  efficient,  highly
customizable,  and portable  while capable  of producing  high-quality
output (glyph images) of most vector and bitmap font formats.

Please   read  the   `docs/CHANGES`   file,   it  contains   IMPORTANT
INFORMATION.

Read the files `docs/INSTALL*`  for installation instructions; see the
file `LICENSE.TXT` for the available licenses.

For using FreeType's git repository  instead of a distribution bundle,
please read file  `README.git`.  Note that you have  to actually clone
the repository; using a snapshot will  not work (in other words, don't
use gitlab's 'Download' button).

The FreeType 2 API reference is located in directory `docs/reference`;
use the file  `index.html` as the top entry point.   [Please note that
currently  the search  function  for  locally installed  documentation
doesn't work due to cross-site scripting issues.]

Additional documentation is  available as a separate  package from our
sites.  Go to

  https://download.savannah.gnu.org/releases/freetype/

and download one of the following files.

  freetype-doc-2.14.3.tar.xz
  freetype-doc-2.14.3.tar.gz
  ftdoc2143.zip

To view the documentation online, go to

  https://freetype.org/freetype2/docs/


Mailing Lists
-------------

The preferred  way of  communication with the  FreeType team  is using
e-mail lists.

  general use and discussion:      freetype@nongnu.org
  engine internals, porting, etc.: freetype-devel@nongnu.org
  announcements:                   freetype-announce@nongnu.org
  git repository tracker:          freetype-commit@nongnu.org

The lists are moderated; see

  https://freetype.org/contact.html

how to subscribe.


Bugs
----

Please submit bug reports at

  https://gitlab.freedesktop.org/freetype/freetype/-/issues

This gitlab instance also supports confidential reports.

Alternatively, but less  preferable, you might report  bugs by sending
an  e-mail to  the  public  mailing list  `freetype-devel@nongnu.org`.
Don't forget to submit a detailed  explanation of the problem -- there
is nothing  worse than receiving  a terse  message that only  says 'it
doesn't work'.


Patches
-------

For larger changes please provide merge requests at

  https://gitlab.freedesktop.org/freetype/freetype/-/merge_requests

Alternatively, you can send patches to the `freetype-devel@nongnu.org`
mailing list  -- and thank you  in advance for your  work on improving
FreeType!

Details on the process can be found here:

  https://freetype.org/developer.html#patches


Enjoy!

  The FreeType Team

----------------------------------------------------------------------

Copyright (C) 2006-2026 by
David Turner, Robert Wilhelm, and Werner Lemberg.

This  file is  part of  the FreeType  project, and  may only  be used,
modified,  and distributed  under the  terms of  the  FreeType project
license,  LICENSE.TXT.  By  continuing to  use, modify,  or distribute
this file you  indicate that you have read  the license and understand
and accept it fully.


--- end of README ---