Niektóre czcionki Unicode nie działają w systemie Windows 7 / Firefox


16

Chcę wyświetlić egipskie hieroglify:

𓀀 𓀁 𓀂 𓀃 𓀄 𓀅 𓀆 𓀇 𓀈 𓀉 𓀊 𓀋 𓀌 𓀍 𓀎 𓀏 𓀐 𓀑 𓀒 𓀓 𓀔 𓀕 𓀕 𓀖 𓀗 𓀘 𓀙 𓀚 𓀛 𓀜 𓀝 𓀞 𓀟 𓀠 𓀡 𓀢 𓀣

Są one częścią Unicode 5.2.

TL; DR:

  • Instalowanie czcionek Noto w czystej maszynie wirtualnej z systemem Windows 7 lub Windows 8 działa zgodnie z oczekiwaniami, a ja mam hieroglify w przeglądarce Firefox.
  • Instalowanie czcionek Noto na moim komputerze lokalnym nie działa. Żaden program nie pokazuje mi żadnych hieroglifów, chyba że konkretnie wywołam czcionkę.
  • Próbowałem różnych obejść, takich jak nazwy plików na pulpicie, aby uruchomić IE przy użyciu tych znaków, bez powodzenia.

Detale:

Próbowałem zainstalować czcionkę Aegyptus , a także czcionki Google Noto .

W rezultacie nowe czcionki pojawiają się w moim systemie (mogę na przykład użyć ich do sformatowania tekstu w MS Word) i jeśli wyraźnie odwołuję się do nich na stronie internetowej (tj. Ustawiając rodzinę czcionek na „aegyptus”) pojawiają się poprawnie:

wprowadź opis zdjęcia tutaj

Problem polega na tym, że nie mogę kontrolować czcionek używanych na stronie internetowej i rozumiem, że system Windows lub moja przeglądarka powinny automatycznie wykryć, że glify nie znajdują się w czcionce, i znaleźć odpowiednie dopasowanie.

Przetestowałem to na czystej maszynie wirtualnej (VM Windows 7 / IE 9 Virtual Box VM od modern.ie) i stwierdziłem, że zainstalowanie noto i Firefox pozwala na działanie czcionek. Po zainstalowaniu czcionki glify pojawiają się automatycznie w przeglądarce Firefox bez konieczności określania czcionki. Ale w przypadku mojej lokalnej maszyny bez metalu nie działa.

Sprawdziłem, czy mój system Windows 7 nagle przestał wyświetlać symbole Unicode, co sugeruje problem z Chrome, i zaleca umieszczenie pliku na pulpicie ze znakami używającymi potrzebnych punktów kodu Unicode. Próbowałem jednak umieścić zarówno plik ze znakiem chińskim, jak i plik ze znakiem egipskim w nazwach plików, co nie pomogło. Uwaga: w żadnym momencie żaden z moich chińskich znaków nie przestał działać. Tylko inne zakresy postaci nie działają.

W każdym razie próbowałem wyłączyć wszystkie programy startowe, które mogę znaleźć, aby sprawdzić, czy jeden z nich nie zepsuł tego, ale nic nie pomogło. Odinstalowałem nawet Chrome, Adobe Acrobat i kilku innych potencjalnych kandydatów, ale bezskutecznie.

AKTUALIZACJA

Odkryłem jedno obejście, które pomaga, ale chciałbym lepsze rozwiązanie. Jeśli wyłączę „Użyj przyspieszenia sprzętowego, gdy jest dostępne” i uruchomię ponownie Firefoksa, pojawią się moje czcionki. Potwierdziłem, że mam najnowsze sterowniki do mojej karty graficznej (Intel HD4000) i to nie wydaje się pomocne. Ten raport o błędach w Mozilli sugeruje, że na niektórych kartach występują problemy z renderowaniem czcionek, ale wspomniane obejście nie ma na mnie wpływu, w każdym razie moje czcionki wyglądają dobrze, ale podstawianie glifów nie występuje.


Czy działają inne niestandardowe czcionki?
bhathiya-perera

@BhathiyaPerera Widzę ten sam problem z np. Skryptem Carian . Na moim komputerze lokalnym tekst nie pojawia się, chyba że edytuję stronę i wstrzykuję rodzinę czcionek. Na mojej maszynie wirtualnej w przeglądarce Firefox działa dobrze.
Mr. Shiny and New 安 宇

Zalecam przetestowanie z użyciem około 10 darmowych nowych czcionek, a także opublikowanie powiązanego kodu, a następnie oflagowanie pytania do przeniesienia do stosu, jeśli to konieczne.
bhathiya-perera

Nadal zastanawiam się, czy dotyczy to tylko skryptów, których punkty kodowe znajdują się powyżej BMP ( n > 0xFFFF), które obejmowałyby takie rzeczy jak matematyczne symbole alfanumeryczne, emoji różnych symboli i piktogramów, większość emotikonów, a także gotyk, pustynia, Skrypty Carian, egipskie hieroglify i pisma klinowe wszystkie w SMP, a także różne ideogramy CJK w SIP.
tchrist

@BhathiyaPerera Nie chodzi o kod. Chodzi o automatyczne zastępowanie czcionek. Kiedy ładuję to pytanie SU na moją stację roboczą, widzę małe pudełka, w których powinienem zobaczyć hieroglify. Gdy ładuję tę samą stronę na maszynę wirtualną w tej samej przeglądarce, widzę hieroglify. Ale mogę powiedzieć, że czcionka jest zainstalowana na mojej stacji roboczej, ponieważ mogę użyć Firebug, aby zmodyfikować DOM tej strony i ustawić rodzinę czcionek; pojawi się czcionka.
Mr. Shiny and New 安 宇

Odpowiedzi:


1

moja przeglądarka powinna automatycznie wykryć, że glify nie znajdują się w czcionce i znaleźć odpowiednie dopasowanie

Niestety, to założenie dotyczące OP jest prawdziwe tylko dla Firefoksa. Firefox używa fontconfig, który zastępuje czcionki według glifów; używana jest odpowiednia czcionka, jeśli zawiera odpowiedni znak.

W porównaniu z IE i Chrome, IE jest nieco lepszy pod tym względem, że zapewnia bardziej rozbudowane funkcje rezerwowe dla poszczególnych skryptów i zapewnia ustawienia interfejsu dla czcionek, choć nie obejmowało to hieroglifów egipskich. Mechanizm zastępowania czcionek dla Uniscribe / DirectWrite, składników głównie do złożonego układu tekstu, opisano w tym artykule MSDN .

Mimo że Chrome w końcu obsługuje zastępowanie czcionek według skryptów w 2012 r., Użytkownicy muszą zainstalować dodatkowe rozszerzenie, aby je ulepszyć - jednym z takich rozszerzeń są Zaawansowane ustawienia czcionek . Jednak powiedzenie wszystkim użytkownikom witryny korzystającym z Chrome, aby zainstalować rozszerzenie, nie jest całkiem wykonalne.

Jeśli chodzi o pierwotny problem, można zbadać kierunek mechanizmu cofania czcionek, prawdopodobnie niektóre inne źle zachowujące się czcionki zastępują czcionkę Noto, twierdząc, że obsługują te glify, podczas gdy w rzeczywistości tak nie jest. Nużącą metodą jest usuwanie dodatkowych czcionek w systemie i ponowne dodawanie ich jeden po drugim, dopóki nie zostanie znaleziony winowajca.


Westchnienie. Zastanawiałem się nad możliwością kłamstwa na temat obsługi tych glifów.
Mr. Shiny and New 安 宇

Niestety podejście Chrome przy użyciu tej wtyczki również nie działa. Z opisu sklepu Chrome
Mr. Shiny and New 安 宇

„Nużąco” usunąłem wszystkie czcionki, które nie zostały znalezione w mojej referencyjnej maszynie wirtualnej, a problem występuje nadal w przeglądarce Firefox.
Mr. Shiny and New 安 宇

To dziwne. Teraz są dwie inne możliwości, o których mogę myśleć: (1) czy ustawienia języka na maszynie wirtualnej i maszynie testującej są identyczne; (2) czy font-familylista w Firefox (z kontroli elementu) jest identyczna w obu środowiskach. Obecnie nie mam pojęcia, czy te 2 punkty nie wykazują podejrzeń.
Abel Cheung


-1

Miałem ten sam problem z oprogramowaniem, które zawierało char w moim języku w oknach, nie wyświetlało prawdziwego char, następnie zmieniłem ustawienia w panelu sterowania -> region i język -> administracja -> Język dla nie-Unicode, i ustawiłem dla mój język.


1
Omawiane czcionki są ściśle częścią Unicode. Ustawienie dla trybu innego niż Unicode nie wchodzi tutaj w grę. W każdym razie nikt nie ma „egipskich hieroglifów” jako języka komputerowego.
Mr. Shiny and New 安 宇

@ Mr.ShinyandNew 安 宇: 𓀇 𓀈 𓀉 𓀊 𓀋 𓀌 𓀍 𓀎 𓀏 𓀐 𓀑 𓀒 𓀓 𓀔 𓀕 𓀖 𓀗 𓀘 𓀙 𓀚 𓀛 𓀜 !!
Cerberus,

-3

Jeśli nie są zainstalowane czcionki pasujące do znaków, nie można ich wyświetlić; Windows nie pobierze czcionek automatycznie!

Możesz osadzić use @font-face( webfonts ) w css swojej strony. Dodaj coś takiego do swojego css, aby zdefiniować stronę:

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

Następnie zastosuj styl do elementu z hieroglifami w swoim css:

.hieroglyphics {font-family: NotoSansEgyptianHieroglyphs;}

2
Mam zainstalowane czcionki. I zweryfikowałem na dwóch różnych maszynach wirtualnych systemu Windows, że zainstalowanie czcionek zwykle wystarcza, aby działały. Coś jest innego w mojej maszynie, ale nie wiem, gdzie jej szukać.
Mr. Shiny and New 安 宇
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.