Git Product home page Git Product logo

blobmoji's People

Contributors

ann4belle avatar asturur avatar behdad avatar brawer avatar c1710 avatar crissov avatar davispuh avatar deedeeg avatar dougfelt avatar jclemme avatar khaledhosny avatar klaas avatar mavit avatar maxr1998 avatar miguelsousa avatar roozbehp avatar secret-chest avatar silversteven avatar yuki-takeichi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

blobmoji's Issues

Input types need to be solid

The following input types:

U+1F524 πŸ”€ U+1F523 πŸ”£ U+1F522 πŸ”’ U+1F521 πŸ”‘ U+1F520 πŸ” 

should have a solid blue background and be inside a square. Emojipedia

AssetEmojiCompatConfig can not load Metadata

Hi, i am trying to use AssetEmojiCompatConfig with EmojiCompat library to load custom font located under main/assets/customfont.ttf.

val config = AssetEmojiCompatConfig(this, "customfont.ttf")
config.registerInitCallback(object:EmojiCompat.InitCallback(){
            override fun onInitialized() {
                super.onInitialized()
            }

            override fun onFailed(throwable: Throwable?) {
                super.onFailed(throwable)
            }
})
EmojiCompat.init(config)

Inside AssetEmojiCompatConfig, at line 107, i see error IOException: Can not read metadata. It is raised in MetadataRepo.java (of EmojiCompat) at line 130. I think Typeface is created, but can not create Metadata.

The font i use is downloaded from fontello.com (choose 1 random icon, then download font zip file). I have tried assigning different unicode values for custom emojis, still same problem. Any clues?

Dancers and kissers not blobby enough

Some of these emoji are gendered non-blobs and that is awful.

All emoji should be genderless blobs or objects or whatever.

Blobby dancer: https://emojipedia.org/google/android-6.0.1/dancer/

Blobby kissers: https://emojipedia.org/google/android-5.0/kiss/

(Android 6.0.1 made the default kiss gendered, but I think that's actually a bit rubbish: https://emojipedia.org/google/android-6.0.1/kiss/)

Ok, so the boy and girl gendered blobs are actually real cute:

https://emojipedia.org/google/android-5.0/boy/
https://emojipedia.org/google/android-5.0/girl/

The person-frowning blob is also fantastic:

https://emojipedia.org/google/android-6.0.1/person-frowning/

Edit to add:

Anyway, I know there are some issues in that the blobs aren't available for the full range of emoji, but I think it would be neat if where they are available they were used.

We like the blobs because they are cute abstractions of people. The blob people emoji are cuter and often easier to read than the people emoji that are in the set now and are one of the things blob-enthusiasts probably want from this font

Thank you for your consideration of this critical issue.

Translations for Asian letters

Since most emoji that have text are in English, I've got an idea: why not add "subtitles" for Japanese/Chinese letter emoji too?

The "subtitles" could consist of one or two words/abbrevations and meanings can be taken from Emojipedia.

Optionally, you could make some English-only emoji by for example combining πŸˆΆπŸ‡¬πŸ‡§ but since that would work only here anyway, I wouldn't consider a priority.

Add transgender pride flag emoj

copying this from twitter/twemoji#337

The latest version of WhatsApp includes the transgender pride flag as emoji ZWJ sequence. It consists of U+1F3F3 (WAVING WHITE FLAG), U+FE0F (VARIATION SELECTOR-16), U+200D (ZERO WIDTH JOINER), U+26A7 (MALE WITH STROKE AND MALE AND FEMALE SIGN).

On WhatsApp it looks like this:

Several people on Twitter already started using it since 2017, so it would be great if Twemoji could add official support as well. Transgender activists are already requesting for this emoji for a long time, it was one of the most-requested emoji of 2018 and of 2017.

Several news articles have already been published about this new emoji in WhatsApp:

AssetEmojiCompatConfig has some weird problems

Because of reasons I don't understand, AssetEmojiCompatConfig seems to have some issues. When I tried implementing it in Blobmoji Preview, it didn't work at all.
When I tried using the regular BundledEmojiCompatConfig, it worked, but showed the Blobmoji EmojiCompat font. This might be possible because the file just occupied the same location as the bundled font would have.
Since I don't understand this at all, I simply recommend trying BundledEmojiCompatConfig if AssetEmojiCompat is not working.

Unicode/Emoji 14

  • beans (Codepoint: [1FAD8], Emoji: 🫘)

  • biting lip (Codepoint: [1FAE6], Emoji: 🫦)

  • coral (Codepoint: [1FAB8], Emoji: πŸͺΈ)

  • empty nest (Codepoint: [1FAB9], Emoji: πŸͺΉ)

  • hamsa (Codepoint: [1FAAC], Emoji: πŸͺ¬)

  • hand with index finger and thumb crossed (Codepoint: [1FAF0], Emoji: 🫰)

    • hand with index finger and thumb crossed: dark skin tone (Codepoint: [1FAF0, 1F3FF], Emoji: 🫰🏿)
    • hand with index finger and thumb crossed: light skin tone (Codepoint: [1FAF0, 1F3FB], Emoji: 🫰🏻)
    • hand with index finger and thumb crossed: medium skin tone (Codepoint: [1FAF0, 1F3FD], Emoji: 🫰🏽)
    • hand with index finger and thumb crossed: medium-dark skin tone (Codepoint: [1FAF0, 1F3FE], Emoji: 🫰🏾)
    • hand with index finger and thumb crossed: medium-light skin tone (Codepoint: [1FAF0, 1F3FC], Emoji: 🫰🏼)
  • heart hands (Codepoint: [1FAF6])

    • heart hands: dark skin tone (Codepoint: [1FAF6, 1F3FF], Emoji: 🫢🏿)
    • heart hands: light skin tone (Codepoint: [1FAF6, 1F3FB], Emoji: 🫢🏻)
    • heart hands: medium skin tone (Codepoint: [1FAF6, 1F3FD], Emoji: 🫢🏽)
    • heart hands: medium-dark skin tone (Codepoint: [1FAF6, 1F3FE], Emoji: 🫢🏾)
    • heart hands: medium-light skin tone (Codepoint: [1FAF6, 1F3FC], Emoji: 🫢🏼)
  • index pointing at the viewer (Codepoint: [1FAF5], Emoji: 🫡)

    • index pointing at the viewer: dark skin tone (Codepoint: [1FAF5, 1F3FF], Emoji: 🫡🏿)
    • index pointing at the viewer: light skin tone (Codepoint: [1FAF5, 1F3FB], Emoji: 🫡🏻)
    • index pointing at the viewer: medium skin tone (Codepoint: [1FAF5, 1F3FD], Emoji: 🫡🏽)
    • index pointing at the viewer: medium-dark skin tone (Codepoint: [1FAF5, 1F3FE], Emoji: 🫡🏾)
    • index pointing at the viewer: medium-light skin tone (Codepoint: [1FAF5, 1F3FC], Emoji: 🫡🏼)
  • jar (Codepoint: [1FAD9], Emoji: πŸ«™)

  • lotus (Codepoint: [1FAB7], Emoji: πŸͺ·)

  • nest with eggs (Codepoint: [1FABA], Emoji: πŸͺΊ)

  • palm down hand (Codepoint: [1FAF3], Emoji: 🫳)

    • palm down hand: dark skin tone (Codepoint: [1FAF3, 1F3FF], Emoji: 🫳🏿)
    • palm down hand: light skin tone (Codepoint: [1FAF3, 1F3FB], Emoji: 🫳🏻)
    • palm down hand: medium skin tone (Codepoint: [1FAF3, 1F3FD], Emoji: 🫳🏽)
    • palm down hand: medium-dark skin tone (Codepoint: [1FAF3, 1F3FE], Emoji: 🫳🏾)
    • palm down hand: medium-light skin tone (Codepoint: [1FAF3, 1F3FC], Emoji: 🫳🏼 )
  • palm up hand (Codepoint: [1FAF4], Emoji: 🫴)

    • palm up hand: dark skin tone (Codepoint: [1FAF4, 1F3FF], Emoji: 🫴🏿)
    • palm up hand: light skin tone (Codepoint: [1FAF4, 1F3FB], Emoji: 🫴🏻)
    • palm up hand: medium skin tone (Codepoint: [1FAF4, 1F3FD], Emoji: 🫴🏽)
    • palm up hand: medium-dark skin tone (Codepoint: [1FAF4, 1F3FE], Emoji: 🫴🏾)
    • palm up hand: medium-light skin tone (Codepoint: [1FAF4, 1F3FC], Emoji: 🫴🏼)
  • playground slide (Codepoint: [1F6DD], Emoji: πŸ›)

  • troll (Codepoint: [1F9CC], Emoji: 🧌)

  • x-ray (Codepoint: [1FA7B], Emoji: 🩻)

Darker mouth if teeth are shown

I've noticed that in small fonts, the mouths aren't as legible as in other emoji sets.

For example, the widely used grinning face πŸ˜€ may seem like it is more about the white teeth, rather than the smile itself.

Similarly, the tears of joy πŸ˜‚ slightly look like fangs due to lack of contrast.

Which dark color to use, though, is up to you. I'd prefer red (Samsung) or black/gray (Google, EmojiOne, Microsoft), not yellow (Apple, WhatsApp, Twitter).

Edit: Not all mouths need to be changed, only those that show teeth.

Non-squishy blobs

I love what you've been doing here with blobmoji, but I'm feeling image because the sad blob isn't a real squishy blob, but rather a stiff & rigid one.

There are a couple other blobs that have squishy variants which I much much prefer, but they were changed to be more rigid, "standardised" and boring copy with the Android 6.0 -> 7.0 release.

I believe that it's important to preserve the "blobbiness" of the blobmoji, a wonderful and adorable design choice that was slowly stripped away, right before the end of blobmoji in Noto Emoji.

Sleeping Blob
image vs image

Sad Blobs
image vs image

Notable changes, color-coded - [Squishy blobs | Rigid blobs (Current)]
image

In terms of standardization, the only real change is the way that some of these blobs face (Left/right/forward), but most of them are pretty identical.

~

I'd like to hear people's thoughts, too. Do you prefer the squisher blobs? The sad blobs in particular, had a lot of redundant copies of... essentially the same thing.

Blobs are meant to be squishy.

Automate object emoji

Would it be feasible to take a set of character images, apply a script filter (e.g. remove gradients and borders) and get a decent image result?

This could work with objects, body parts and symbols, but not people or emotions.

Pros:

  • Overall styles can be updated by Google
  • Less original work to be done (more focus on blobs )

Cons:

  • have to wait for a beta/final release to get the images
  • one filter might not fit all images

Issues with Android 4.4-5.x/6.x

I tried taking the .ttf from the release and replacing the current font, but the emoji do not show. A few of the emoji show as black and white (I'm not sure if it's all the black and white emoji or if only some work), but the rest just do not show up. The Oreo NotoColorEmoji font works fine, as do the Nougat emoji, so I'm pretty sure it's an issue with this font. (Just to test, I also tried the EmojiCompat font, and got the exact same results).

build Linux (Debian) fonts package

i used the fpm project to build a Debian package

fpm --input-type=dir \
  --output-type=deb \
  --name fonts-color-blobmoji \
  --version 2018-08-14 \
  --description "Noto Color Emoji with extended Blob support" \
  --license Apache-2.0 \
  --url=https://github.com/C1710/blobmoji \
  --provides=fonts-noto-color-emoji \
  --replaces=fonts-noto-color-emoji \
  --conflicts=fonts-noto-color-emoji \
  --deb-changelog=CHANGES.txt  \
  NotoColorEmoji.ttf=/usr/share/fonts/truetype/noto/NotoColorEmoji.ttf \
  01-prefer-blobmoji-over-dejavu-sans.conf=/etc/fonts/conf.d/

This fonts package is called fonts-color-blobmojiand profides/replaces/conflicts Google's noto-color-emoji font…

Furthermore, we also add a configuration file to replace dejavu sans where sensible:

<?xml version="1.0" ?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <match target="scan">
    <test name="family">
      <string>Noto Color Emoji</string>
    </test>
    <edit name="scalable" mode="assign">
      <bool>true</bool>
    </edit>
  </match>

  <match target="pattern">
    <test name="prgname" qual="any">
      <string>rambox</string>
    </test>
    <test name="prgname" qual="any">
      <string>konsole</string>
    </test>
    <test name="prgname" qual="any">
      <string>firefox</string>
    </test>
    <test name="prgname" qual="any">
      <string>google-chrome</string>
    </test>
    <test name="prgname" qual="any">
      <string>chromium-browser</string>
    </test>
    <edit name="family" mode="prepend_first">
      <string>Noto Color Emoji</string>
    </edit>
  </match>
</fontconfig>

Radio button/checkbox

The radio button should look more like a radio button and less like a broken miscolored target.
U+1F518 πŸ”˜ Emojipedia
In my opinion, it should also look more consistent with the checkbox, like Apple does.
U+2611 U+FE0F β˜‘οΈ Emojipedia
Personally I'd just steal it from Material guidelines πŸ˜›

Make locks face straight

U+1F512 πŸ”’ and U+1F513 πŸ”“ could base on the same locks as in U+1F50F πŸ” / U+1F510 πŸ”.

Maybe the latter could also have the pen/key overlap or come closer.

Flags missing in emoji12 branch

Somehow I managed to delete the region flags directory in my local repo, so all the pre-built fonts here currently contain no flags (maybe except for the few that have their own file in png/128).
If you want to use that font now, I recommend to either build it yourself (the repository version here should work) or wait a few minutes...

Compatibility with Noto build tools

As the 13.1 is approaching, this issue might come up for some:
All the new (and in an yet to be published branch almost all) emojis are not named emoji_u<...>.svg anymore, but are named well... by their official name.
While this in my opinion really makes it easier to search for emojis and organize them, it does not work directly anymore with the scripts provided by Noto Emoji.

I already started working on a system for emoji_builder (name still WIP) to render and rename the emojis such that the original scripts can be used instead of the (almost) identical ones built into the software itself, however right now this is low priority for me, so unless anyone needs this functionality, I will probably not implement it for now.

Conflicts with other fonts on Linux

despite all the right configuration, there still appear to be a few glyphs missing

screenshot_20180815_213520

n.b.: i have DejaVu uninstalled, so i'm fairly certain it's not coming from there!

Could this be from Bitstream Vera?

if so, i have more work to do on my fontconfig, and uninstalling DejaVu was just a very inadequate workaround.

New toolset

Building this font is currently rather hard. Especially if you are working with different emoji sets, maybe even with different formats.

In one issue I also stated that my long time-goal is to have a software (with a GUI) that allows everyone to build their own emoji set, e.g. Blobmoji but with the water pistol as the default pistol emoji.

I'm currently making the first step towards this goal by writing a new software that is intended to replace the Makefile by a more platform-independent, reliable Rust-based software that is supposed to work mostly out of the box with as little external dependencies as possible.
Right now I'm preparing the necessary data structures and creating the SVG rendering pipeline which will directly include optimizations without any intermediate files.

It would be nice to see some ideas I might incorporate in that software 😊

(The repository isn't public yet, because I still need to check all the licensing stuff for the Crates I use, but I'll soon publish it at https://github.com/c1710/emoji_builder)

Android P new emoji

Android P preview got some new emoji. Full changes aren't listed on Emojipedia yet AFAIK, but notably:

  • default family and couple is gender-inclusive
  • new hairstyles
  • at least 8 emoji from v11
  • some emoji got visual changes

I'm aware Blobmoji supports Emoji 11 already, but you may want to use this to update your designs, if needed.

Black & white font is called Noto Emoji

./fonts/NotoColorEmoji.ttf has a name β€œBlobmoji”, but ./fonts/NotoEmoji-Regular.ttf is β€œNoto Emoji”, which conflicts with Noto Emoji if both fonts are installed.

Comic Sans?

What's up with the use of Comic Sans in all text-including emoji? Why not use something more Google-y like Product Sans or Roboto?

Blobbing the food emojis

I've started converting some of the new food emojis to blob style. Kinda scary because I actually have to draw these - I'm not just playing build-a-blob with copy and paste. Here's a first draft of pumpkin pie - putting it in Issues since we're nowhere near prime time ready:
newpie
Compare this with the blob cake and the modern Noto pie:
cake
oldpie
Outline was loosely traced over the cake, colors copied from the jack-o-lantern emoji. I'm mostly happy with the pie but the whipped cream needs work. Any thoughts?

Issue regarding new and custom ZWJ sequences

At least on Fedora there are some issues regarding the rendering of the new ZWJ sequences for people with red/white/no hair, super hero/villain and the newly added custom ZWJ sequences for easter egg and the compatibility sequences.

possibly change family name?

This is a great project, but i think that the font family name should be changed to make the difference clear.
noto-emoji-blobs might be a good choice?

P.S. the blobs discord server has a lot of good fanmade blobs that you might find useful!

Possible to use blobmoji as a base for replacing Windows 10 emojis?

Is there a way to build the fonts in a format that can be used by most native / .NET Windows applications, and a method I can use to integrate blobmoji into the system default fonts on Windows 10, similar to the twemoji-color-font project?

I'm not very familiar with Python, nor with the TrueType / OpenType formats and specifications, or I would be picking apart the respective sources and answering those questions for myself. 😩

I'm not very happy with most vendors' emoji choices, but I've loved the blobs since they debuted...

can't generte NotoColorEmoji.ttf

follow the README.md, i excute make -j4, but its giving below error:
'''
...
uchars = "".join ([unichr(cp) for cp in cps if not is_vs(cp)])
ValueError: unichr() arg not in range(0x10000) (narrow Python build)
make: *** [Makefile:215: NotoColorEmoji.ttf] Error 1
'''
i modify emoji_builder.py, change unichr(i) to
'''
def unichar(i):
try:
return unichr(i)
except ValueError:
return "".join(("\U%08x" % i).decode('unicode-escape'))
'''
excute make again, fail with follow error:
'''
Traceback (most recent call last):
File "third_party/color_emoji/emoji_builder.py", line 579, in
main (sys.argv)
File "third_party/color_emoji/emoji_builder.py", line 525, in main
glyph_name = get_glyph_name_from_gsub (uchars, font, unicode_cmap.cmap)
File "third_party/color_emoji/emoji_builder.py", line 33, in get_glyph_name_from_gsub
first_glyph = cmap_dict[ord (string[0])]
KeyError: 55356
make: *** [NotoColorEmoji.ttf] Error 1
'''
how can i successfully generte NotoColorEmoji.ttf?

rofimoji won't use Blobmoji

For some reason, Blobmoji won't work in this program even though it's supposed to support color emojis. I'm not sure if it's an issue with Blobmoji, or rofimoji. Even a lot of the black and white emoji are missing. Isn't Blobmoji supposed to have those as a fallback?

https://github.com/fdw/rofimoji

Problems with Fedora 28

So apparently Fedora 28 includes emoji by default!
Unfortunately they went for Noto Emoji. And you can't uninstall it without uninstalling like the whole system.
So I guess I'll have to fix this somehow.
Unfortunately I don't have very much time for the next 1-2 months so a fix might take a bit longer...

EmojiCompat flags

There seems to be a problem regarding flags, at the moment. Apparently flags are always displayed as unknown flag.
I think the reason for this is that flags are not listed in the Unicode data files.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.