How to Install EmojiOne Color SVGinOT Font in Ubuntu

April 20, 2017 | By
| Reply More

SVG in Open Type(SVGinOT) is a standard by Adobe and Mozilla for color OpenType and Open Font Format fonts. It allows font creators to embed complete SVG files within a font enabling full color and even animations. EmojiOne Color Font uses glyphs from the free Emoji One artwork. The font works in all operating systems, but will currently show color emoji in Mozilla Firefox and Thunderbird only. This is not a limitation of the font, but of the operating systems and applications. Regular B&W outline emoji are included for backward/fallback compatibility. Non-Gecko applications like twitter client Corebird, chrome browser and Nylas N1 e-mail client don’t support SVGinOT fonts. As such only monochrome emotion characters will be displayed. This article covers installation of EmojiOne Color SVGinOT in Ubuntu 16 version.

EmojiOne Color SVGinOT requires Bitstream Vera already installed and it will change the systems default serif, sans-serif and monospace fonts.

Install Bitstream Vera

The default serif, sans-serif and monospace font for most Linux distributions is DejaVu. The symbols of DejaVu override the EmojiOne Color characters. There was a solution to make EmojiOne Color the default system font, but that results in a number of issues. Bitstream Vera doesn't override any emoji characters and hence Vera is the source of the glyphs used in DejaVu.

In Ubuntu use apt-get to install bitstream vera

 # sudo apt-get install ttf-bitstream-vera

The following manual method will work in other distros.

 # wget http://ftp.gnome.org/pub/GNOME/sources/ttf-bitstream-vera/1.10/ttf-bitstream-vera-1.10.tar.gz
 # tar xf ttf-bitstream-vera-1.10.tar.gz
 # mkdir /usr/share/fonts/ttf-bitstream-vera
 # cd ttf-bitstream-vera-1.10 
 # mv * /usr/share/fonts/ttf-bitstream-vera/

Use fc-cache to scan font directories and to builds font information cache files for applications like firefox for font handling.

 # fc-cache -vfrs
 ...............
 /usr/share/fonts/ttf-bitstream-vera: caching, new cache contents: 10 fonts, 0 dirs
 /usr/share/fonts/ucs-miscfixed: caching, new cache contents: 23 fonts, 0 dirs
 ...............

Install EmojiOne Color SVGinOT

In Ubuntu, you can install EmojiOne Color SVGinOT using apt-get.

 # sudo apt-add-repository ppa:eosrei/fonts
 # sudo apt-get update
 # sudo apt-get install fonts-emojione-svginot

Use the following manual method to install it for a specific user or any other linux distro.

 # wget https://github.com/eosrei/emojione-color-font/releases/download/v1.3/EmojiOneColor-SVGinOT-Linux-1.3.tar.gz
 # tar zxf EmojiOneColor-SVGinOT-Linux-1.3.tar.gz
 # cd EmojiOneColor-SVGinOT-Linux-1.3
 # ./install.sh 
 EmojiOne Color font installer for Linux\n
 NOTE: Changing default font family to Bitstream Vera
 Installing the font in: /root/.local/share/fonts/
 Clearing font cache
 Done!

Remember only Firefox supports the SVGinOT color emoji for now. Safari and Chrome will use the fallback black and white emoji.

Setup and build on Ubuntu 16.04 LTS

Requirements:-

Inkscape
Imagemagick
potrace/mkbitmap
FontTools 3.0+
FontForge 20160405+
SVGO
make
SCFBuild

Add ppa:fontpage repository to apt database and update the system.

 # sudo add-apt-repository ppa:fontforge/fontforge 
 # sudo apt-get update

Install all the dependencies

 # sudo apt-get install inkscape potrace npm nodejs nodejs-legacy fontforge python-fontforge python-pip imagemagick git make

Install svgo using npm. SVG Optimizer is a Nodejs-based tool for optimizing SVG vector graphics files.

 # sudo npm install -g svgo

Install fonttools and pyyml using pip. fontTools is a library for manipulating fonts, written in Python.

 # sudo pip install pyyaml
 # sudo pip install fonttools

Clone emojione-color-font using git, change to the emojione-color-font directory and then again clone  SCFBuild ( SVGinOT Color Font Builder). SCFBuild creates color fonts from SVGs on the command line.

 # git clone https://github.com/eosrei/emojione-color-font.git
 # cd emojione-color-font
 # git clone https://github.com/eosrei/scfbuild.git SCFBuild

Now built the fonts by executing make.

 # make -j 4
 .......................
 .......................
 INFO:scfbuild.builder:Reading intermediate font file
 INFO:scfbuild.builder:Adding SVGinOT SVG files
 INFO:scfbuild.builder:Saving output file: build/EmojiOneColor-SVGinOT-OSX.ttf
 INFO:scfbuild.builder:Done!
 INFO:scfbuild.builder:Saving output file: build/EmojiOneColor-SVGinOT.ttf
 INFO:scfbuild.builder:Done!

It will take around 15-20 minutes to build the fonts. Copy build/EmojiOneColor-SVGinOT.ttf  to ~/.local/share/fonts and clear font cache.

 # cp build/EmojiOneColor-SVGinOT.ttf  ~/.local/share/fonts
 # fc-cache -vfrs

Now check the demo of EmojiOne Color SVGinOT, you will be able to view the color fonts.

Conclusion

The current best option to display emoji on any Linux computer is to set up Brad Erickson’s EmojiOne color font or Twemoji color font. Using these two, you will get a full color emoji in Mozilla applications and fallback to black and white symbols elsewhere as described in installation procedure in this article.

Filed Under : UBUNTU HOWTO

Tagged With : ,

Free Linux Ebook to Download

Leave a Reply

All comments are subject to moderation.