Некоторые шрифты Unicode не работают в Windows 7 / Firefox


16

Я хочу показать египетские иероглифы:

𓀀 𓀁 𓀂 𓀃 𓀄 𓀅 𓀇 𓀈 𓀈 𓀋 𓀋 𓀋 𓀎 𓀎 𓀏 𓀑 𓀒 𓀒 𓀒 𓀔 𓀖 𓀗 𓀙 𓀙 𓀝 𓀝 𓀝 𓀟 𓀟 𓀟 𓀡 𓀢 𓀣 𓀣

Они являются частью Unicode 5.2.

TL; DR:

  • Установка шрифтов Noto в чистую виртуальную машину Windows 7 или Windows 8 работает так, как вы ожидаете, и у меня есть иероглифы в Firefox.
  • Установка шрифтов Noto на мой локальный компьютер не работает. Ни одна программа не показывает мне иероглифы, если я специально не вызову шрифт.
  • Я пробовал различные обходные пути, такие как имена файлов на рабочем столе, чтобы вызвать IE, используя эти символы, не повезло.

Детали:

Я попытался установить шрифт Aegyptus , а также шрифты Google Noto .

В результате в моей системе появляются новые шрифты (например, я могу использовать их для форматирования текста в MS Word), и если я явно обращаюсь к ним на веб-странице (то есть, установив семейство шрифтов в «aegyptus») они отображаются правильно:

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

Проблема в том, что я не могу контролировать, какие шрифты использует веб-страница, и я понимаю, что Windows или мой браузер должны автоматически обнаруживать, что глифы отсутствуют в шрифте, и находить соответствующее совпадение.

Я проверил это на чистой виртуальной машине (виртуальной машине с Windows 7 / IE 9 Virtual Box от modern.ie) и обнаружил, что установка noto и Firefox позволяет просто работать шрифтам. После установки шрифта глифы автоматически появляются в Firefox, и мне не нужно указывать font-face. Но для моей местной железной машины это не работает.

Я проверил, что моя Windows 7 внезапно перестала отображать символы Unicode, что указывает на проблему с Chrome, и рекомендует поместить на рабочий стол файл с символами, которые используют нужные вам кодовые точки Unicode. Тем не менее, я попытался поместить как файл с китайским иероглифом, так и файл с египетским символом в именах файлов, но это не помогло. Примечание: ни один из моих китайских символов никогда не переставал работать. Это только другие диапазоны символов, которые не работают.

В любом случае я пытался отключить все программы запуска, которые я могу найти, чтобы проверить, не испортила ли одна из них, но ничего не помогло. Я даже удалил Chrome, Adobe Acrobat и несколько других возможных кандидатов, но безрезультатно.

ОБНОВИТЬ

Я обнаружил один обходной путь, который помогает, но я хотел бы найти лучшее решение. Если я отключу «Использовать аппаратное ускорение, если доступно» и перезапущу Firefox, то появятся мои шрифты. Я подтвердил, что у меня установлены последние версии драйверов для моей видеокарты (Intel HD4000), и это, похоже, не помогает. Этот отчет об ошибках в Mozilla предполагает, что на некоторых картах есть проблемы с отображением шрифтов, но заявленный обходной путь не влияет на меня, и в любом случае мои шрифты выглядят хорошо, но замена глифа не происходит.


Работают ли другие пользовательские шрифты?
бхатия-перера

@BhathiyaPerera Я вижу ту же проблему, например, со сценарием Кариана . На моей локальной машине текст не появится, пока я не отредактирую страницу и не введу семейство шрифтов. На моей виртуальной машине в Firefox все работает нормально.
Мистер Блестящий и Новый 宇 宇

Я рекомендую вам протестировать около 10 бесплатных новых шрифтов, а также опубликовать соответствующий код, а затем пометить вопрос, который необходимо переместить в stackoverflow, если это необходимо.
Бхатия-перера

Я все еще задаюсь вопросом, применимо ли это только к сценариям, кодовые точки которых лежат выше BMP ( n > 0xFFFF), которые включают такие вещи, как математические буквенно-цифровые символы, смайлики разных символов и пиктограмм, большинство смайликов, а также готика, пустыня, Карийские, египетские иероглифы и сценарии клинописи - все в SMP, а также различные иероглифы CJK в SIP.
августа

@BhathiyaPerera Это не о коде. Это об автоматической замене шрифта. Когда я загружаю этот вопрос SU на свою рабочую станцию, я вижу маленькие прямоугольники, в которых я должен видеть иероглифы. Когда я загружаю эту же страницу на свою виртуальную машину в том же браузере, я вижу иероглифы. Но я могу сказать, что шрифт установлен на моей рабочей станции, потому что я могу использовать Firebug, чтобы изменить DOM этой страницы и установить семейство шрифтов; тогда появится шрифт.
Мистер Блестящий и Новый 宇 宇

Ответы:


1

мой браузер должен автоматически обнаружить, что глифы не находятся в шрифте, и найти соответствующее совпадение

К сожалению, это предположение относительно OP верно только для Firefox. Firefox использует fontconfig, который выполняет замену шрифта для каждого глифа; соответствующий шрифт используется, если он содержит соответствующий символ.

По сравнению с IE и Chrome IE немного лучше в том смысле, что он обеспечивает более обширный резерв для каждого сценария и предоставляет настройки пользовательского интерфейса для шрифтов, хотя это не охватывало египетские иероглифы. Механизм восстановления шрифта для Uniscribe / DirectWrite, компонентов, в основном для сложного текстового макета, описан в этой статье MSDN .

Хотя в 2012 году Chrome наконец-то поддерживает резервирование шрифтов по сценариям , пользователям необходимо установить дополнительное расширение, чтобы настроить их - одно из таких расширений - « Дополнительные настройки шрифта» . Однако сказать всем посетителям сайта, использующим Chrome для установки расширения, не вполне возможно.

Что касается исходной проблемы, то, возможно, захочется выяснить направление механизма восстановления шрифта, возможно, какой-то другой шрифт с плохим поведением переопределяет шрифт Noto, утверждая, что поддерживает эти глифы, хотя на самом деле это не так. Утомительный метод заключается в удалении лишних шрифтов из системы и их повторном добавлении по одному, пока виновник не будет найден.


Вздох. Я задавался вопросом о возможности шрифта, лежащего о поддержке этих символов.
Мистер Блестящий и Новый 宇 宇

К сожалению, подход Chrome с использованием этого плагина тоже не работает. Из описания Chrome-store: Chrome будет использовать настройки шрифта, контролируемые этим расширением, когда ОБА из следующих условий: 1) Веб-страница объявила язык содержимого (например, с помощью атрибута lang HTML); и 2) На веб-странице не указан шрифт для использования.
Мистер Блестящий и Новый 宇 宇

Я «утомительно» удалил каждый шрифт, который не был найден на моей эталонной виртуальной машине, и проблема сохраняется в Firefox.
Мистер Блестящий и Новый

Странно. Теперь у меня есть еще две возможности: (1) идентичны ли языковые настройки на ВМ и на вашем тестовом компьютере; (2) font-familyидентичны ли списки в Firefox (из проверки элементов) в обеих средах. Тока я понятия не имею, если эти 2 пункта не показывают никаких признаков подозрения.
Абель Чунг

-1

Существует страница WIKI, посвященная отображению специальных символов, включая подсказки для IE и египетские символы: http://en.wikipedia.org/wiki/Help:Special_characters Может быть, это может помочь


1
Эта страница в основном говорит вам, чтобы установить шрифты. Я уже сделал это.
Мистер Блестящий и Новый

-1

У меня была та же проблема с программным обеспечением, в котором был установлен символ моего языка в окнах, он не отображал истинный символ, затем я изменил настройки в панели управления -> регион и язык-> административный -> Язык для не-Unicode, и установил его для мой язык.


1
Указанные шрифты строго являются частью Unicode. Настройка не-Unicode здесь не вступает в игру. Во всяком случае, ни у кого нет "египетских иероглифов" в качестве компьютерного языка
Мистер Блестящий и Новый

@ Mr.ShinyandNew 安 宇: 𓀇 𓀈 𓀉 𓀊 𓀋 𓀌 𓀍 𓀎 𓀏 𓀑 𓀒 𓀓 𓀔 𓀕 𓀕 𓀕 𓀘 𓀙 𓀚 𓀜 𓀜 𓀜 !!
Цербер

-3

Если не установлены никакие шрифты, которые соответствуют символам, они не могут быть отображены; Windows не загружает шрифты автоматически!

Вы можете встроить использование @font-face( веб-шрифты ) в CSS вашей веб-страницы. Добавьте что-то вроде этого в ваш CSS, чтобы определить веб-шрифт:

@font-face {
    font-family: 'NotoSansEgyptianHieroglyphs';
    src: url('http://myserver/example/NotoSansEgyptianHieroglyphs-Regular.ttf');
}

Затем примените стиль к элементу с иероглифами в вашем CSS:

.hieroglyphics {font-family: NotoSansEgyptianHieroglyphs;}

2
У меня установлены шрифты. И я проверил на двух разных виртуальных машинах Windows, что установки шрифтов обычно достаточно для их работы. Что-то не так в моей машине, но я не знаю, где ее искать.
Мистер Блестящий и Новый
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.