18.04: кольорові емоджи зовсім не відображаються в Chrome, лише частково у Firefox


24

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

Знімки екрана зі сторінки демонстрації емоджи на веб-сайті http://eosrei.github.io/emojione-color-font/full-demo.html :

Chrome: введіть тут опис зображення

Firefox: введіть тут опис зображення

Відповіді:


16

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

Цей пакет повинен бути встановлений на звичайному смаку робочого столу Ubuntu 18.04+ (на рівні "Рекомендований" - перевірте самі apt rdepends fonts-noto-color-emoji). Деякі інші аромати, такі як Kubuntu (KDE), за замовчуванням не мають цього і вимагають встановити його вручну.


3
Це не спрацювало для мене. Я використовую Ubuntu 18.04 з Chrome v71 з офіційного сховища Google. Інша відповідь зробила трюк.
undercat підтримує Моніку

34

Я це виправив - я повинен був дотримуватися цих інструкцій з 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 має кольорові смайли.


-1, з двох причин: 1) місцевий fontconfig більше 18.04 не потрібен. 2) "Установка шрифту Noto була непотрібною, оскільки він встановлений як частина 18.04 за замовчуванням" не є правдою. У мене повна інсталяція на робочому столі KDE, і вона взагалі не була встановлена. Дивіться також мою відповідь .
gertvdijk

2
Чи знаєте ви, чи це все вірно і для оновлень? Я відчув, що мої проблеми могли бути пов'язані з оновленням 17.10.
N3dst4

2
Я використовую Kubuntu 18.04 і після встановлення шрифтів Noto у мене все-таки була така ж проблема. Однак це зробило для мене трюк. На жаль, я не впевнений, що причиною зміни було саме конфігураційний файл або просто заклик до "fc-cache". Можливо, обоє були потрібні.
andypotter

Цей виправлений емоджи в Chrome, але, на жаль, зламав їх у Анкі . Зрештою, мені довелося взагалі повернути це, щоб уникнути побічних ефектів.
undercat підтримує Моніку

2

Здається, ця проблема може бути викликана встановленням декількох несумісних шрифтів смайлів та / або неправильним шрифтом за замовчуванням, вибраним у 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. Відновіть кеш шрифту + перезавантажте хром.

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

    • Приклад: Мої емоджи були виведені шрифтом Twitter Color Emoji, тому мені потрібно було видалити пакунок fonts-twemoji-svginot.
    • Можливо, вам не знадобиться видаляти шрифти, якщо ви більше граєте з конфігураційними файлами шрифту, але я цього не перевіряв.
    • Не забудьте відновити кеш шрифту + перезапустити хром після видалення шрифтів.

До речі, це також зафіксувало для мене текст 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. Який конкретний веб-сайт викликає у вас проблеми?
Джеремі Біча

Гаразд, я бачу, що ви вирішили свою проблему, встановивши смайли font-noto-color-emoji. Я намагався отримати кожен аромат Ubuntu 18.04 LTS, щоб включити цей пакет за замовчуванням, але розробники Lubuntu та Kubuntu цього не хотіли.
Джеремі Біча

@Jeremy_Bicha Так, на Kubuntu. Але, мій погляд, ваша «відповідь» - це скоріше коментар до іншої відповіді щодо тестової сторінки, яку слід використовувати. Це насправді не відповідає Q / OP.
gertvdijk

Ваше посилання вводить в оману, оскільки в ньому є правило CSS для сімейства шрифтів для стовпця "Веб-переглядач", який включає конкретні шрифти, наприклад "Noto Color Emoji". Більшість веб-сайтів не мають цього правила CSS. Тож для мене емоджи добре відповідає вашим посиланням із fonts-noto-color-emojiвстановленим пакетом, поки я не відключу це правило CSS, тоді вони цього не роблять. Якщо я скопіюю + вставте деякі смайли з вашого посилання на gedit або термінальне вікно, деякі стануть штрафом, а деякі не (наприклад, U + 2603 ☃ не працює, поки U + 26C4 ⛄ робить).
Abe Voelker
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.