Freetype implementation.
The spec is the "Order of rounding operations" part of
https://developer.apple.com/fonts/TTRefMan/RM02/Chap2.html#rounding
but it wasn't exactly clear to me what "the negative round value
closest to zero" was: if the phase is 1/4, was that value -1/4 or
-3/4? Anyway, the Go code now follows the C code, and code trumps
documentation.
R=bsiegert
CC=golang-dev
https://codereview.appspot.com/14092044
Also add a test that freetype-go derives the same glyph points as
the C freetype implementation.
R=bsiegert
CC=golang-dev
https://codereview.appspot.com/12670046
These new opcodes aren't unit-tested per se, but they will be
exercised by an end-to-end hinting test of the Luxi fonts.
R=bsiegert
CC=golang-dev
https://codereview.appspot.com/12100043
Thanks to Jeff R. Allen <jra@nella.org> for the conversation that
led to this change.
benchmark old ns/op new ns/op delta
BenchmarkDrawString 21168440 20143860 -4.84%
The number of mallocs per iteration is unchanged.
R=rsc, r
CC=golang-dev, jra
http://codereview.appspot.com/6304077
I'm not sure why I put that limit in in the first place. I can't find
that limit in either the C Freetype code or the TTF spec.
R=bradfitz
CC=golang-dev
http://codereview.appspot.com/6201043
just version 2. The FTL (Freetype Licence) is still available. This
matches the original Freetype library (written in C).
This only expands and does not further restrict the licensing options
available to users of the freetype-go library.
R=adg
CC=golang-dev
http://codereview.appspot.com/1731049
draw text onto an image.
This is a simple API that doesn't handle line breaking, ligatures,
right-to-left or vertical scripts, and other fancy features.
R=r, rsc
CC=golang-dev
http://codereview.appspot.com/1121045
Parsing a malformed TTF may result in an index out-of-bounds panic,
rather than guaranteeing to return an error. This may be tightened
in the future.
R=r, rsc
CC=golang-dev
http://codereview.appspot.com/940044