Rand Stats

Font::FreeType

zef:dwarring
0.5.13  2024-12-17T05:37:21+13:00
    - Make cmap() return character codes rather than characters.
      Base forall-chars() and forall-images() on cmap().

0.5.12  2024-12-15T14:38:07+13:00
    - Add cmap method; for lightweight glyph/character mappings

0.5.11  2024-12-07T06:47:11+13:00
    - Add top-bearing method #32
    - Add face file() file attribute

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