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 предполагает, что на некоторых картах есть проблемы с рендерингом шрифтов, но заявленный обходной путь не влияет на меня, и в любом случае мои шрифты выглядят хорошо, но замена глифа не происходит.

4 ответа4

1

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

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

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

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

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

-1

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

-1

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

-3

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

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

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

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

.hieroglyphics {font-family: NotoSansEgyptianHieroglyphs;}

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .