18.04: цветные смайлики вообще не отображаются в Chrome, только частично в Firefox
Я обновился с 17.10 до 18.04 и надеялся получить лучшую поддержку смайликов. В результате Chrome (66) все еще использует старый черно-белый шрифт эмодзи, а Firefox (59) показывает некоторые цветные эмодзи, но не другие. Я взял несколько советов, чтобы установить шрифт EmojiOne, но это не помогло
Снимки экрана с демонстрационной страницы смайликов по адресу http://eosrei.github.io/emojione-color-font/full-demo.html:
Хром:
9 ответов
В Ubuntu 18.04+ вы можете просто установить один пакет: fonts-noto-color-emoji
, После этого перезапустите Chrome, и он вступит в силу. Нет необходимости создавать ручную настройку шрифта.
Предполагается, что этот пакет устанавливается на обычную версию рабочего стола Ubuntu 18.04+ (с "рекомендуемым" уровнем зависимости - проверьте сами с apt rdepends fonts-noto-color-emoji
). Некоторые другие версии, такие как Kubuntu (KDE), не имеют этого по умолчанию и требуют установки вручную.
Для всех, у кого есть проблема, удаление и повторная установка пакета шрифтов сработали для меня (Ubuntu 19.10)
$ sudo apt remove fonts-noto-color-emoji
$ sudo apt install fonts-noto-color-emoji
или просто
$ sudo apt reinstall fonts-noto-color-emoji
Затем перезапустите Chrome.
Редактировать:
Проблемы иногда возникают, когда Chrome получает обновление, а затем мне приходится переустанавливать шрифт.
IDK, если это поможет, но возможно копирование шрифта в
/usr/local/share/fonts
решит эту проблему для будущих обновлений:
sudo cp -r /usr/share/fonts/truetype/noto /usr/local/share/fonts/truetype/noto
Я исправил это - я должен был следовать этим инструкциям с 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.
Не используйте эту демонстрационную страницу для проверки цвета эмодзи. На этой странице показан только шрифт EmojiOne, который по умолчанию не установлен в Ubuntu (хотя Firefox использует его вариант).
Вместо этого используйте https://unicode.org/emoji/charts/full-emoji-list.html
Посмотрите на столбец Браузер. В Ubuntu по умолчанию он должен в основном соответствовать столбцу Google. (За исключением столбца Браузер, все остальные столбцы просто .png
иконки). Когда я тестировал сегодня, колонка Google просто немного устарела, поскольку Google внесла некоторые изменения в некоторые из своих смайликов, которые не были включены в веб-сайт. (Например, у гамбургера есть сыр сверху гамбургера.)
Кажется, эта проблема может быть вызвана наличием нескольких несовместимых шрифтов emoji и / или неправильным шрифтом по умолчанию, выбранным в Chrome.
Убедитесь, что у вас есть
fonts-noto-color-emoji
пакет установлен.sudo apt install fonts-noto-color-emoji
Создайте / отредактируйте файлы конфигурации шрифта, как в ответе @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>
- Примечание. В то время как @N3dst4 поместил свой конфигурационный файл в
Установите шрифты по умолчанию в Chrome для вариантов "Noto".
Перестройте кэш шрифтов + перезапустите Chrome.
fc-cache -f -v
Если эмодзи по-прежнему отображаются неправильно, посмотрите, какие шрифты используются для их рендеринга.
right click on emoji -> Inspect -> Computed -> Rendered Fonts
и удалите их.- Пример: мои смайлики отображались шрифтом
Twitter Color Emoji
так что мне нужно было удалить пакетfonts-twemoji-svginot
, - Вам может не понадобиться удалять шрифты, если вы больше играете с файлами конфигурации шрифтов, но я этого не проверял.
- Не забудьте перестроить кэш шрифтов + перезапустить Chrome после удаления шрифтов.
- Пример: мои смайлики отображались шрифтом
Кстати, это также исправило текст Zalgo для меня.
Ни одно из предложенных здесь предложений не решило мою проблему, заключающуюся в том, что Google Chrome в Ubuntu 18.04 не будет отображать цветные эмодзи, что бы я ни делал. В конце концов я решил свою проблему, выполнив следующую команду:
$ sudo apt-get purge fonts-symbola ttf-ancient-fonts-symbola
После этого я перезапустил Google Chrome, и цветные смайлы наконец заработали.
В моем случае это потому, что несколько шрифтов предоставляют эмодзи. Я должен удалитьfonts-emojione
делать fonts-noto-color-emoji
Работа.
Другой потенциальный пакет шрифтов может вызвать конфликт: font-noto
.
Ссылка на связанную ошибку.
Решено добавлением расширения Emojis — Emoji Keyboard в Chrome.
Кроме того, я проверил, что расширение Chromoji - Emojis для Google Chrome также работает.
1-е примечание: смайлики появляются везде на странице, кроме полей ввода и текстового поля.
2-е примечание: любое из этих расширений дополнительно дает нам возможность искать смайлики вместе с возможностью их копирования.