Skip to content

Releases: jessedoyle/prawn-icon

4.1.0

13 Dec 02:28
a1f35a3
Compare
Choose a tag to compare
  • Add a size_mode option to the icon method that scales the size of the rendered icon to fit within the requested value.

Please see the documentation here for further information. Thanks @pepijnve! Pull Request

4.0.0

26 Nov 03:36
788a6ce
Compare
Choose a tag to compare
  • breaking change - Update from FontAwesome 5.11.2 to 6.7.1. Please see the notes here for information related to changed or removed icons in the set. Thanks @pepijnve! Pull Request

3.1.0

02 Sep 05:02
e76a293
Compare
Choose a tag to compare
  • Update our CI matrix to include recent versions of Prawn and Ruby! Thanks @petergoldstein! (#55)
  • Resolve a few code smells that were flagged by Rubocop.
  • Material Design Icons are now supported! Currently version 7.0.96 is included. Thanks @maneex! (#59)
  • Memoize calls to Prawn::Icon::FontData#path to improve performance.

Material Design Icons

All Material Design Icons use the font prefix of mdi. That means that you're able to reference an icon as follows:

require 'prawn/icon'

Prawn::Document.generate('icons.pdf') do |pdf|
  pdf.icon 'mdi-beer', size: 60
end

3.0.0

11 Nov 06:46
49c26ad
Compare
Choose a tag to compare
  • breaking change - Fix incorrect layout and line-wrapping logic for inline-formatted icons. Please see Inline Format Changes for more details.
  • Add a #formatted_icon_box method to retain the previous inline icon behaviour.
  • Allow #formatted_icon_box to accept absolute positioning parameters (x, y, and at). Thanks @navinspm!
  • Update fontawesome from version 5.11.2 to 5.15.1.
  • See FontAwesome's upgrade guide for more details.
  • Introduce a configuration mechanism so that the font directory can be customized as follows:
Prawn::Icon.configure do |config|
  config.font_directory = '/path/to/fonts'
end
  • Deprecate the global variables of Prawn::Icon::Base::FONTDIR and Prawn::Icon::Compatibility::SHIMS. Use Prawn::Icon.configuration.font_directory and Prawn::Icon::Compatibility.shims instead.
  • Use Gem::Specification#full_gem_path to get the root path of the gem directory to resolve #45.

Inline Format Changes

As noted in #49, Prawn::Icon did not correctly respect page boundaries for inline-formatted icons.

The fix for the issue requires Prawn::Icon to use the inline layout and formatting logic implemented in Prawn.

This change has ramifications to the #icon and #inline_icon method return values, but most applications should not require changes.

Changes are listed below:

  • #icon - returns nil with the inline_format: true parameter.
  • #inline_icon - returns nil (instead of a Prawn::Text::Formatted::Box instance).

You can call #formatted_icon_box to retain the previous inline icon functionality.

2.5.0

05 Oct 02:26
3c5db41
Compare
Choose a tag to compare
  • Update FontAwesome from 5.8.2 to 5.11.2.
  • See FontAwesome's upgrade guide for more details.

2.4.0

27 May 02:27
0fef76a
Compare
Choose a tag to compare

2.3.0

08 Oct 20:29
8ae3d08
Compare
Choose a tag to compare
  • Update FontAwesome to version from 5.0.13 to 5.4.0.
  • See FontAwesome's release page for more details.

2.2.0

21 May 04:18
9048062
Compare
Choose a tag to compare
  • Move out shim configuration into a .yml file located inside the data/fonts/fa4/shims.yml file.
  • Update FontAwesome TTF files and legend files from 5.0.8 to 5.0.13.
  • Add additional compatibility shims that were missing for some icons from FontAwesome 4. This version release is now fully backwards-compatible with all icon specifiers present in FontAwesome 4 (via version 1.4.0 of this gem).
  • Fix a bug in the FontAwesome converter tool by properly requiring fileutils before execution.

2.1.0

02 Apr 04:23
51a84ae
Compare
Choose a tag to compare
  • Introduce backwards compatibility with FontAwesome 4 icon keys by dynamically
    rewriting all instances of fa-* to their appropriate FontAwesome 5 equivalent
    key. This is achieved by implementing a shim generated from the FontAwesome metadata.
  • Introduce a deprecation warning written to STDERR when any fa-* key is
    encountered. The compatibility shim will be removed in the next major version
    of Prawn::Icon (3.0.0).
  • See the discussion here for more details.

2.0.0

08 Mar 03:41
3dcefcc
Compare
Choose a tag to compare
  • [breaking change] Update to FontAwesome 5.0.8. FontAwesome 5 now provides 3 different font families: brands, regular and solid. The specifiers for these font icons are now: fab, far and fas.
  • [breaking change] Remove GitHub Octicons because Octicons are now only delivered via SVG.
  • [breaking change] Make the font specifier a required attribute for Prawn::Icon::FontData#new. Previously it was assumed to be fa.
  • Write a new tool tool/fontawesome/converter.rb that accepts the FontAwesome metadata YAML file (link), and generates the correct legend files for brands, regular and solid styles.
  • Require 'prawn/icon/version' with by default.