0.5.10 2024-11-07T05:34:13+13:00
- Coerce to IO::Path objects on face creation #31
0.5.9 2024-10-01T05:29:31+13:00
- Use MacOS::NativeLib to locate libraries on MacOS
0.5.8 2024-08-09T06:21:56+12:00
- Fix tests on Windows
- Take a copy of FT_Bitmap_Size structs. To avoid any chance of
dangling references.
0.5.7 2024-05-24T07:49:27+12:00
- Add FT_Face.get-bitmap-size() accessor. Fix and reinstate BDF fonts.
0.5.6 2024-05-20T09:15:00+12:00
- Make the default load flags suitable for outline, scalable fonts #25
- Partially deprecate BDF fonts #28
0.5.5 2024-01-22T05:46:45+13:00
- Add face glyph-image() method
- Change OpenType/CFF to return type font-format 'OpenType' #27.
- Add index-to-unicode() method
- Add set-charmap() method
0.5.4 2023-12-17T06:55:36+13:00
- Fix face height and advance-width. Thanks Tom Browder
- Add face bbox() alias for bounding-box() #23.
0.5.3 2023-08-10T06:26:27+12:00
0.5.8 2024-08-09T06:21:56+12:00
- Fix tests on Windows
- Take a copy of FT_Bitmap_Size structs. To avoid any chance of
dangling references.
0.5.7 2024-05-24T07:49:27+12:00
- Add FT_Face.get-bitmap-size() accessor. Fix and reinstate BDF fonts.
0.5.6 2024-05-20T09:15:00+12:00
- Make the default load flags suitable for outline, scalable fonts #25
- Partially deprecate BDF fonts #28
0.5.5 2024-01-22T05:46:45+13:00
- Add face glyph-image() method
- Change OpenType/CFF to return type font-format 'OpenType' #27.
- Add index-to-unicode() method
- Add set-charmap() method
0.5.4 2023-12-17T06:55:36+13:00
- Fix face height and advance-width. Thanks Tom Browder
- Add face bbox() alias for bounding-box() #23.
0.5.3 2023-08-10T06:26:27+12:00
- Implement face .attach-file method and face creation option
0.5.2 2023-08-07T08:18:25+12:00
- Various fixes to bin/font-say and examples/*.raku
0.5.1 2023-08-06T09:06:18+12:00
- Fix Font::FreeType::Outline Array() method and add
bounding-box() method.
- Add glyph top-bearing() method. Only available if
has-vertical-metrics() is True for the face.
0.5.0 2023-07-06T09:50:41+12:00
- Add set-font-size() method. This is a replacement method
that sets both character-level and font-level metrics
- kerning default mode is now FT_KERNING_UNSCALED before
set-font-size() has been called. Then Changes to
FT_KERNING_UNFITTED.
- Face bbox() method, which doesn't scaled has been deprecated
in favour of bounding-box(), which does scale.
0.4.9 2023-07-04T07:46:39+12:00
- Fix handling of unscaled font units in Face kerning and Glyph
font metrics. Better detect that there are unscaled and don't
divide return values by 64 (Dot6).
0.4.8 2023-06-23T06:59:48+12:00
- Fix calculations in Font::FreeType::SizeMetrics class #16
0.4.7 2023-06-15T05:53:07+12:00
- Add Font::FreeType::SizeMetrics class
- Add scaled-font accessor to Font::FreeType::Face. This should
be used after calling `set-font-size()` or `set-pixel-sizes()`
on the font
- Fix 'glyph-to-eps' example to work with the current version #12
0.4.6 2023-04-15T06:06:29+12:00
- Add empty libfreetype.so and .dylib resources to fix installation
on Linux and Windows.
0.4.5 2023-04-14T15:31:58+12:00
- Add Windows support. Use pre-built DLLs courtesy of
https://github.com/ubawurinna/freetype-windows-binaries
0.4.4 2023-04-06T06:06:08+12:00
- Add face methods forall-glyph-images() and forall-char-images().
These are similar to forall-glyphs() and forall-chars() except they
return Font::FreeType::GlyphImage rather than Font::FreeType::Glyph.
0.4.3 2022-10-31T09:42:26+13:00
- Add face is-internally-keyed-cid() method (for use by
PDF::Font::Loader)
0.4.2 2022-06-21T09:25:39+12:00
- The Font::FreeType::Outline bbox method now returns a
Font::FreeType::BBox object rather than a raw FT_BBox.
- The following Font::FreeType::Face methods now return
Int:U rather than Mu for unscaleable fonts: units-per-em,
underline-position, underline-thickness, ascender, descender
- Also added return types for various other methods.
0.4.1 2022-05-19T07:04:46+12:00
- Modify forall-chars() and forall-glyphs() to perform protected calls
- Deprecate face iterate-chars() and iterate-glyphs() methods in
favor if forall-chars(), forall-glyphs(). The latter are now
locked for thread-safety.
0.4.0 2022-05-18T09:17:23+12:00
- Add face lock() attribute. Use it to protect iterate-chars() and
iterate-glyphs() and face update methods for improved thread-safety
- Change from CPAN to zef repository
0.3.11 2022-02-15T05:39:32+13:00
- Fix failing tests in Rakudo 2022.02
0.3.10 2022-02-04T07:55:53+13:00
- Fix test for pending Rakudo 2022.02 release; niner++
0.3.9 2022-02-02T12:05:34+13:00
- Add Pointer coercement. For the benefit of FontConfig's query-ft-face()
method
- Tweaks to Build.pm6 and Makiefile.in
0.3.8 2021-07-02T13:22:29+12:00
- Add $face.index-from-glyph-name() method
- Hide ft-try() subroutine and face() method from backtrace.
0.3.7
- Allow Font::FreeType face() and version() methods to be called
at the class level. In particular allow `Font::FreeType.face(..)`
rather than `Font::FreeType.new.face(...)`
- port examples/magick.raku from Perl
- Add :%callbacks option to Font::FreeType::Outline.decompose() method.
Option ported from the Perl outline_decompose() method.
- Add native method ft6_bitmap_get_pixels(). Speed up the bitmap pixels
method. Improve the performance of bin/font-say examples/magick.raku, etc
0.3.6
- Rename GlyphImage bold() method to set-bold().
- Add methods iterate-glyphs(), iterate-chars().
0.3.5
- Add TT_OS2 panose() and achVendID() accessors. Also TT_PCLT typeface()
and fileName() accessors
0.3.4
- Corrections to TT_PCLT record structure and TT_Post.italicAngle()
accessor
0.3.3
- Added Font::FreeType::Raw::TT_SFnt - mappings to raw TrueType
font tables
0.3.2
- Documentation fixes #5
- Add method $face.glyph-name-from-index
0.3.1
- Documentation changes
0.3.0
- native -> raw in class names and attributes. Follow lead of LibXML
-- Font::FreeType::Native -> Font::FreeeType::Raw
-- $obj.native -> $obj.raw
As LibXML demonstrates, the outer classes can also use native
representations, mostly for performance reasons.
0.2.3
- Convert documentation to github pages. New documentation
root is https://pdf-raku.github.io/Font-FreeType-raku
0.2.2
- Rename sources *.pm -> *.rakumod
0.2.1
- Rename Font::FreeType::Types to Font::FreeType::Defs and
add exports $FT-LIB, $FT-WRAPPER-LIB and $CLIB
0.2.0
- Generate documentation (markdown) to docs/ directory
0.1.9
- Fix existing deprecations. Also deprecate newly introduced
unbox() accessor in favour of native().
0.1.8
- Re-enable freeing of the Freetype library in DESTROY
- Deprecate $freetype/$face struct() method in favour of unbox()
0.1.7
- Added $face.forall-glyphs method. Ported from Perl 5
version 0.0.7.
- Added Glyph 'stat' and 'error' methods. Leaving it to
the caller to detect and raise errors.
- Fixed $glyph.name method on unmapped glyphs.
- Fixed on debian 9+ testing, which has withdrawn
the freetype-config executable (issue #3).
0.1.6
Fix t/10metrics_postscript.t to pass on FreeType2 2.9.1+.
0.1.5
Fix protoypes for FT_Get_First_Char, FT_Get_Next_Char
0.1.4
- Fix premature destruction of Font-Library
e.g. this is dangerous:
my $vera = Font::FreeType.new.face('t/fonts/Vera.ttf');
The anonymous font library instance could get destroyed also
destroying the underlying struct for the still-live $vera face.
Added a $.ft-lib property to face that references
to library class to avoid it's destruction.
Also added $.face property to BitMap, CharMap,
Glyph and GlyphImage to indirectly keep the library
from being destroyed if any of these sub-objects
exist.
0.1.3
- Renamed C wrapper functions and sources ft_* -> ft6_*.
0.1.2
- Fixed Font::FreeType::Native.Str on Rakudo bleed 2018.11+
0.1.1
- Move resources/lib to resources/libraries. Build improvements.
See https://gist.github.com/ugexe/ec5fe910d3187c46a4f8e634423cb4ea
0.1.0
- Perl 6.d syntax fix
0.0.9
- $face.charmaps now returns a Slip (was Array)
0.0.8
- adjust to latest zef. Return True from Build method
0.0.7
- Fixed compilation warning on latest Rakudo
- Fix problematic test (issue #1)
0.0.6
- Fixed compilation error on latest Rakudo
0.0.5
- Rename examples/font-say.pl bin/font-say
- Don't call FT_Reference_Face, which will cause memory leakage.
0.0.4
- Add missing build dependency on LibraryMake
0.0.3
- Documentation tweaks
0.0.2
- Fix Build.pm META6.
0.0.1
- Initial release