- May 18, 2015
- 13
- 0
- 0
I need help modifying NotoColorEmoji.ttf
Solution in reply below!!
This may be a tough question, but I am hoping someone can help.
I am attempting to replace one of the images in NotoColorEmoji.ttf (The Emoji Font).
My goal is to change my Emoji pack to the one standard with the Galaxy S6, but replace the ribbon emoji with the one from the iOS Emoji pack for reasons of importance only to me. (However, if someone can help me solve this, I'm sure it may help others who are trying to do similar things with Emojis.)
To do this, I thought I would simply open the S6 NotoColorEmoji.ttf in a hex editor, find the part of the file that corresponds to the S6 ribbon, and overwrite it with the iOS ribbon.
So, first I opened the TTF file and noticed that the Emojis appear to be simple PNG files. I created a Java program to extract all of these PNG files, which you can find on my GitHub page:
https://github.com/MitchTalmadge/EmojiExtractor
It worked flawlessly, and I now have all of the S6 and iOS Emojis as PNG files. The S6 Emojis are 108x108 pixels, and the iOS Emojis are 128x128 pixels.
Ignoring the image dimensions for now, I opened the PNG file for the S6 ribbon, copied everything in the file as hex, and searched for all of it within the TTF file. I found the part of the TTF file that corresponded to the S6 ribbon, then I opened the PNG file for the iOS ribbon, copied everything in that file, and replaced the part of the TTF file that corresponded to the S6 ribbon.
I saved the TTF file, and replaced the one in my phone (after backing it up, of course) with the modified TTF file. After doing this, instead of having all of the S6 Emojis with the ribbon being the iOS Emoji, all of the Emojis turned into boxes, with the exception of some which were not PNG files:

I tried scaling the iOS Emoji down to 108x108 pixels, but this didn't fix it.
I have no idea where to go from here. Anyone experienced in this kind of stuff? I would love some help! I can clarify anything that doesn't make sense. Thanks!!
If it matters, I am using an LG G3 with CyanogenMod 12.1.
Solution in reply below!!
This may be a tough question, but I am hoping someone can help.
I am attempting to replace one of the images in NotoColorEmoji.ttf (The Emoji Font).
My goal is to change my Emoji pack to the one standard with the Galaxy S6, but replace the ribbon emoji with the one from the iOS Emoji pack for reasons of importance only to me. (However, if someone can help me solve this, I'm sure it may help others who are trying to do similar things with Emojis.)
To do this, I thought I would simply open the S6 NotoColorEmoji.ttf in a hex editor, find the part of the file that corresponds to the S6 ribbon, and overwrite it with the iOS ribbon.
So, first I opened the TTF file and noticed that the Emojis appear to be simple PNG files. I created a Java program to extract all of these PNG files, which you can find on my GitHub page:
https://github.com/MitchTalmadge/EmojiExtractor
It worked flawlessly, and I now have all of the S6 and iOS Emojis as PNG files. The S6 Emojis are 108x108 pixels, and the iOS Emojis are 128x128 pixels.
Ignoring the image dimensions for now, I opened the PNG file for the S6 ribbon, copied everything in the file as hex, and searched for all of it within the TTF file. I found the part of the TTF file that corresponded to the S6 ribbon, then I opened the PNG file for the iOS ribbon, copied everything in that file, and replaced the part of the TTF file that corresponded to the S6 ribbon.
I saved the TTF file, and replaced the one in my phone (after backing it up, of course) with the modified TTF file. After doing this, instead of having all of the S6 Emojis with the ribbon being the iOS Emoji, all of the Emojis turned into boxes, with the exception of some which were not PNG files:

I tried scaling the iOS Emoji down to 108x108 pixels, but this didn't fix it.
I have no idea where to go from here. Anyone experienced in this kind of stuff? I would love some help! I can clarify anything that doesn't make sense. Thanks!!

If it matters, I am using an LG G3 with CyanogenMod 12.1.
Last edited: