π³π£β¨
Welcome to man with turban, megaphone, keyboard.
emoji!Emoji (η΅΅ζε)
A small digital image or icon used to express an idea or emotion in electronic communication
Japanese meaning e "picture", moji "character"Word of the Year 2015
- Oxford Dictionaries
π
Underlining the importance of emoji.
Face with Tears of JoyRepresentation
πΎ
- Name: FLOPPY DISK
- Unicode Block: 0x1F300-0x1F5FFMiscellaneous Symbols and Pictographs
- Unicode code point: 0x1F4BE
- UTF-8: 0xF0 9F 92 BE
- UTF-8: 11110000 10011111 10010010 10111110β
Floppydisk
U+1....1 emoji != 1 code point
Modifiers (like ligatures):
- Skin Tone:
- Gender
- Zero Width Joiner sequences
ππ
What is the history behind emojis?
What, where, why, who?1. Japanese telecom
πΎπ―π΅
DoCoMo, KDDI, SoftBank.
Shigetaka Kurita working with i-mode at DoCoMo. Some emoji from manga (sweat).
Others followed.
Incompatible encodings...Mojibake (ζεεγ)
- SmΓΆrgΓ₯s - UTF-8
- SmΓΒΆrgΓΒ₯s - ISO 8859-1
Meaning "character transformation"
Garbled text
Result of text decoded with unintended encoding
Example in swedish with UTF-8 encoded text decoded with latin12. Unicode
- Convertion from telecom specific encodings
- Proposal for Encoding Emoji Symbols - 2007/2008
- Google, Apple, ++ on commitee
1991: Unicode Consortium, released Unicode 1.0
2010: Unicode 6.0 first including emoji3. Web and Mobile adoption
- Yahoo Japan Web Mail, Gmail (web) - 2006
- Android apps - 2008
- Apple iPhone OS 2.2 w/ Emoji Keyboard - 2010
- Android 4.3 - 2013
Yahoo
Android apps
Apple
Android OSInstagram
Instagram emoji usage in messages by percent over time
Tag support, mapping to meanings, similar tagsπ¨π»π±
How to use emojis?On the Web
Substitue with PNG in JS:
<script src="//twemoji.maxcdn.com/twemoji.min.js"></script>
OpenType:
- bitmap (CBDT, CBLC) - Google Freetype 2.5+
- bitmap (sbix) - Apple Mac OS X 10.7+, iOS, FreeType
- layers of flat vectors - Microsoft IE11+
- SVGinOT - Firefox, Adobe Firefox 26+
Naive approach using JS and PNG's
Native support with OpenType@font-face and unicode-range
@font-face {
font-family: 'Noto Color Emoji';
src: url('../resources/NotoColorEmoji.ttf') format('opentype');
/* Emoji block ranges */
unicode-range: U+1F1E6-1F1FF, U+1F300-1F5FF, U+1F600-1F64F, U+1F680-1F6FF, U+2300-23FF, U+2600-26FF, U+2700-27BF;
}
body {
font-family: 'Noto Color Emoji';
}
Usage of Google color emoji font in the browser
unicode-range tells the browser the font only handles these code pointsemojione picker (Ubuntu)
$ add-apt-repository ppa:ys/emojione-picker
$ apt update
$ apt install emojione-picker
Mac OS X (10.9+)
Ctrl + β + Space
No native support on Ubuntu
Mac OS X is easy, checkServices / OS
What has unicode or emoji support?
- Registrars/Domains: Whitelist blocked β π’π’π’
- ...EXCEPT .ws πΌπΈ β
- DNS: IDN β
- Webservers: IDN β
- Browsers: IDN β
- Mail: Postfix (3.0+) β
Unicode is needed for emoji
Registrars block most unicode code points, whitelisting only specific points, becasue of security issues
Webservers only need to understand ascii
unicode/utf-8 and thus emoji is allowed in more and more placesFavourites
- FLOPPY πΎ
- WORLD MAP πΊ
- FAX MACHINE π
- UNICORN FACE π¦
- πππππDancers moving in from left and right
- π»Mount fuji exploding with flowersπΈπΈπΈ and fireworks πππ
- dragons flying π²π²π²πππ everywhere
Tom Scott / Computerphile
π³π£β¨
Welcome to man with turban, megaphone, keyboard.
emoji!