18.04: цветные смайлики вообще не отображаются в Chrome, только частично в Firefox

25

Я обновился с 17.10 до 18.04 и надеялся получить лучшую поддержку смайликов. В результате Chrome (66) все еще использует старый черно-белый шрифт эмодзи, а Firefox (59) показывает некоторые цветные эмодзи, но не другие. Я взял несколько советов, чтобы установить шрифт EmojiOne, но это не помогло.

Снимки экрана с демонстрационной страницы смайликов по адресу http://eosrei.github.io/emojione-color-font/full-demo.html :

Хром: введите описание изображения здесь

Fire Fox: введите описание изображения здесь

N3dst4
источник

Ответы:

17

На Ubuntu 18.04+ теперь вы можете просто установить один пакет: fonts-noto-color-emoji. После этого перезапустите Chrome, и он вступит в силу. Нет необходимости создавать ручную настройку шрифта.

Предполагается, что этот пакет устанавливается на обычную версию рабочего стола Ubuntu 18.04+ (на уровне «Рекомендуемый» - проверьте сами apt rdepends fonts-noto-color-emoji). Некоторые другие версии, такие как Kubuntu (KDE), не имеют этого по умолчанию и требуют установки вручную.

gertvdijk
источник
3
Это не сработало для меня. Я использую Ubuntu 18.04 с Chrome v71 из официального репозитория Google. Другой ответ сделал свое дело.
Undercat поддерживает Monica
35

Я исправил это - я должен был следовать этим инструкциям с 2016 года 😧 я должен был создать ~/.config/fontconfig/conf.d/01-emoji.confсо следующим текстом:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <alias>
    <family>serif</family>
    <prefer>
      <family>Noto Color Emoji</family>
    </prefer>
  </alias>
  <alias>
    <family>sans-serif</family>
    <prefer>
      <family>Noto Color Emoji</family>
    </prefer>
  </alias>
  <alias>
    <family>monospace</family>
    <prefer>
      <family>Noto Color Emoji</family>
    </prefer>
  </alias>
</fontconfig>

Бит в оригинальной инструкции по установке шрифта Noto был ненужным, поскольку по умолчанию он установлен как часть 18.04.

Затем запустите:

fc-cache -f -v

При следующей перезагрузке Chrome имеет цвет Emoji.

N3dst4
источник
-1, по двум причинам: 1) локальный fontconfig больше не требуется в 18.04. 2) «установка шрифта Noto не требовалась, поскольку по умолчанию он является частью 18.04» , не всегда верно. У меня установлена ​​полная версия рабочего стола KDE, и она вообще не была установлена. Смотрите также мой ответ .
gertvdijk
2
Вы знаете, правда ли это и для обновлений? Я чувствовал, что мои проблемы могли быть связаны с обновлением 17.10.
N3dst4
2
Я использую Kubuntu 18.04 и после установки The Noto Fonts у меня осталась та же проблема. Однако это помогло мне. К сожалению, я не уверен, что это был конфигурационный файл или просто вызов "fc-cache", который вызвал изменение. Может быть, оба были необходимы.
andypotter
Это исправило эмодзи в Chrome, но, к сожалению, сломало их в Anki . 😞 В конечном итоге мне пришлось полностью отменить это, чтобы избежать побочных эффектов.
Undercat поддерживает Монику
2

Кажется, эта проблема может быть вызвана наличием нескольких несовместимых шрифтов emoji и / или неправильным шрифтом по умолчанию, выбранным в Chrome.

  1. Убедитесь, что у вас установлен fonts-noto-color-emojiпакет.

    sudo apt install fonts-noto-color-emoji
    
  2. Создайте / отредактируйте файлы конфигурации шрифта, как в ответе @ N3dst4 .

    • Примечание: хотя @ N3dst4 вставил его файл конфигурации ~/.config/fontconfig/conf.d/01-emoji.conf, я вставил его ~/.config/font-manager/local.confиз-за того, как настроена моя система.
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
    <fontconfig>
      <alias>
        <family>serif</family>
        <prefer>
          <family>Noto Color Emoji</family>
        </prefer>
      </alias>
      <alias>
        <family>sans-serif</family>
        <prefer>
          <family>Noto Color Emoji</family>
        </prefer>
      </alias>
      <alias>
        <family>monospace</family>
        <prefer>
          <family>Noto Color Emoji</family>
        </prefer>
      </alias>
    </fontconfig>
    
  3. Установите шрифты по умолчанию в Chrome для вариантов «Noto».

  4. Перестройте кэш шрифтов + перезапустите Chrome.

    fc-cache -f -v
    
  5. Если эмодзи по-прежнему отображаются неправильно, посмотрите, какие шрифты используются для их рендеринга, right click on emoji -> Inspect -> Computed -> Rendered Fontsи удалите их.

    • Пример: мои эмоджи были отрисованы шрифтом Twitter Color Emoji, поэтому мне нужно было удалить пакет fonts-twemoji-svginot.
    • Вам может не понадобиться удалять шрифты, если вы больше играете с файлами конфигурации шрифтов, но я этого не проверял.
    • Не забудьте перестроить кэш шрифтов + перезапустить Chrome после удаления шрифтов.

Кстати, это также исправило текст Zalgo для меня.

Иржи Кунеш
источник
1

Не используйте эту демонстрационную страницу для проверки цвета эмодзи. На этой странице показан только шрифт EmojiOne, который по умолчанию не установлен в Ubuntu (хотя Firefox использует его вариант).

Вместо этого используйте https://unicode.org/emoji/charts/full-emoji-list.html

Посмотрите на столбец Браузер. В Ubuntu по умолчанию он должен в основном соответствовать столбцу Google. (За исключением столбца «Обозреватель», все остальные столбцы являются просто .pngзначками). Когда я тестировал сегодня, колонка Google просто немного устарела, поскольку Google внесла некоторые изменения в некоторые из своих смайликов, которые не были включены в веб-сайт. (Например, у гамбургера есть сыр сверху гамбургера.)

Джереми Бича
источник
Справедливо, но это не ответ на оригинальный вопрос - как включить цветовые смайлики в Chrome.
gertvdijk
@gertvdijk Color смайликов делает работу в Google Chrome. Какой конкретный веб-сайт вызывает у вас проблемы?
Джереми Бича
Хорошо, я вижу, что вы исправили свою проблему, установив fonts-noto-color-emoji. Я старался, чтобы каждый вариант Ubuntu 18.04 LTS включал этот пакет по умолчанию, но разработчики Lubuntu и Kubuntu этого не хотели.
Джереми Бича
@Jeremy_Bicha Да, на Кубунту. Но, с моей точки зрения, ваш «ответ» - это скорее комментарий к другому ответу об использовании тестовой страницы. Это действительно не отвечает Q / OP.
gertvdijk
Ваша ссылка вводит в заблуждение, поскольку в ней есть правило CSS для семейства шрифтов для столбца «Браузер», который включает в себя определенные шрифты, такие как «Noto Color Emoji». У большинства веб-сайтов не будет этого правила CSS. Так что для меня эмоджи прекрасно обрабатывает вашу ссылку с fonts-noto-color-emojiустановленным пакетом, пока я не отключу это правило CSS, тогда они этого не делают. Если я копирую + вставляю некоторые эмодзи из вашей ссылки в gedit или окно терминала, некоторые отрисовываются нормально, а некоторые нет (например, U + 2603 ☃ не работает, а U + 26C4 ⛄ работает).
Абе Воелкер,