Makes text images. Introspecs (in a limited way thus far) a font file to get to it's metadata. Supports OTF/TTF font features the likes of ligatures, old style numbers, stylistic alternatives, etc. Cheapredwine uses of Harfbuzz' hb-view utility to generate images.
Make sure the dependencies are satisfied
$ gem install cheapredwine
It assumes the following is installed and in the case where it applies; accessible from the $PATH env variable.
font = Cheapredwine.new font_file
font.font_name # => "Font Name"
font.family_name # => "Font Family"
font.style # => "Bold Italic"
font.features # => ["liga", "onum", "dlig", … "salt"]
image = font.image do
append_text "Hello" # A regular piece of text
append_text "123456", with: ["onum"] # A piece of text with 'onum' enable
turn_on_feature "dlig" # Turns a feature on for the whole image
turn_off_feature "liga" # Turns off a feature for the whole image
set_margin 0
set_font_size 32
set_background "#123456"
set_foreground "#654321"
end
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request
- Replace hb-view by something more appropriate (C Extension or pure Ruby implementation).