Help language development. Donate to The Perl Foundation
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