Prawn::Emoji

Gem Version Build Status

Prawn::Emoji is an extention for Prawn, provides feature for drawing Emoji.

Installation

Add this line to your application's Gemfile:

gem 'prawn-emoji', require: false

And then execute:

$ bundle

Or install it yourself as:

$ gem install prawn-emoji

Usage

In order to run the following code, you need to place both DejaVuSans.ttf and ipag.ttf in the same directory as the script file.

require 'prawn'
require 'prawn/emoji'

Prawn::Document.generate 'foo.pdf' do
  font 'DejaVuSans.ttf'
  text '๐ŸŸ + ๐Ÿ”ช = ๐Ÿฃ'

  font 'ipag.ttf'
  text_box '๐ŸฃใŒ้ฃŸในใŸใ„', at: [100, 100], width: 300

  draw_text '๐Ÿฃ๐Ÿฃ๐Ÿฃ๐Ÿฃ๐Ÿฃ', at: [100, 200]
end

IMPORTANT

In order to draw emoji, you must use a TTF - True Type Font. I recommend you use a Japanese font.

Feature

  • Emoji is provided by EmojiOne http://emojione.com
  • Multi-character emoji support
  • RTL support
  • Character spacing support
  • Rotation support
  • Alignment support
  • Font size support

Supported versions

See also https://travis-ci.org/hidakatsuya/prawn-emoji.

Ruby

2.1, 2.2, 2.3

Prawn

2.1

INFO: Version 1.x supports Prawn 1.3 and 2.0. See README in 1.0-stable branch.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/hidakatsuya/prawn-emoji.

How to update emoji/index.yml

If you update emoji image in emoji/images, you need to update emoji/index.yml to run the following task:

$ bundle exec rake emoji:generate_index

Credit

Emoji One

Emoji provided free by Emoji One.

IPA Font

IPA Font License Agreement v1.0

License

ยฉ 2015 Katsuya HIDAKA. See MIT-LICENSE for further details.