Płynne renderowanie czcionek dla japońskich znaków

12

Korzystam z systemu Windows 7 i ustawiłem wygładzanie czcionek na ClearType. Jednak japońskie znaki są wyświetlane z grubsza w całym systemie operacyjnym. Co mogę zrobić, aby były renderowane płynnie jak inne postacie?

Oto próbka tego, jak obecnie wyglądają:

zrzut ekranu

missingfaktor
źródło
Czy japońskie znaki są renderowane z grubsza tylko w przeglądarce? Jeśli tak, jakiej przeglądarki używasz?
iglvzx,
@iglvzx, używam Chrome. Ale problem nie ogranicza się do Chrome. Wordpad, Word itp. Zachowują się tak samo.
missingfaktor
Ok. Dzięki za wytłumaczenie. Dodam tę informację do twojego pytania. :)
iglvzx,
nawiasem mówiąc, to nie „hiragana” coś zapamiętała, to wy pamiętaliście hiragana. poprawna fraza to „ひ ら が な を 覚 え た”
v.oddou,

Odpowiedzi:

4

Problem polega na tym, że tradycyjne japońskie czcionki (MS Gothic, MS PGothic, MS Mincho…) zawierają także czcionki bitmapowe w małych rozmiarach oprócz konturowych (zwykle dla znaków 22pt i mniejszych). Tych bitmap nie można nakładać na żaden rodzaj wygładzania , więc powoduje szaleńczo brzydkie aliasing, powodujący uraz oczu. Istnieje na to kilka rozwiązań:

Kroki usuwania bitmap z czcionek:

  • Skopiuj pliki czcionek, które chcesz usunąć, na przykład msgothic.ttc , \Windows\Fontsdo folderu
  • Pobierz BREAKTTCnarzędzie z MS TrueType SDK
  • Otwórz wiersz polecenia w folderze, do którego skopiowano czcionki i wpisz BREAKTTC msgothic.ttc. Następnie możesz zobaczyć, że wszystkie pliki ttf w ttc są wyodrębniane jako FONT00.ttf ~ FONTxx.ttf

    breakttc

  • Teraz możesz pobrać FontTools z Microsoft Typography . Następnie wyodrębnij SBIT32narzędzie potrzebne do usunięcia EBDT (osadzona tabela danych bitmapowych). Składnia polecenia jest następująca

    SBIT32 -d <original font file> <metric file> [output file]

    Musisz uruchomić to dla każdego rozmiaru mapy bitowej (zwykle od 7 do 22), aby usunąć wszystkie mapy bitowe, co jest dość niezręczne, jeśli piszesz ręcznie. Zautomatyzowany skrypt byłby bardzo pomocny.

    @echo off
    copy %1 %2 >nul
    for /l %%i in ( 7,1,22 ) do (
        echo PPEM %%i > mtemp.txt
        echo END >> mtemp.txt
        sbit32 -d %2 mtemp.txt ftemp.ttf  
        del %2
        ren ftemp.ttf %2
    )
    del mtemp.txt
    

    Zapisz powyższą zawartość jako rmEBDT.bati uruchom następujące polecenia (3 dla MS Gothic, ponieważ mamy 3 wyodrębnione pliki ttf)

    rmEBDT font00.ttf msgot2.ttf 
    rmEBDT font01.ttf msgotp2.ttf 
    rmEBDT font02.ttf msuigot2.ttf
    
  • Teraz usunęliśmy pliki czcionek, możemy zmienić nazwy tych czcionek (które są niezależne od nazw plików czcionek ), na przykład MS Gothic NB - Bez bitmapy , aby używać ich razem ze starymi czcionkami, lub po prostu użyć starej nazwy i zastąpić oryginalną plik ttc, który jest trochę sztuczką.
    Tak czy inaczej musimy spakować je ponownie do pliku ttc, aby zainstalować ponownie w systemie Windows. Skorzystaj z narzędzia, MAKETTCktóre znajduje się w tym samym folderze co BREAKTTClub możesz je również znaleźć tutaj . Biegać

    MAKETTC <TTC output file name> <TTF file 1> <TTF file 2> ...
  • Po uzyskaniu pliku ttc, jeśli zmieniłeś nazwę czcionki, po prostu skopiuj ją bezpośrednio, \Windows\Fontsaby zarejestrować ją jako nową czcionkę i zmienić domyślną czcionkę w interfejsie użytkownika, aplikacjach ... na tę czcionkę. Jeśli chcesz użyć starej nazwy czcionki, musisz uruchomić system operacyjny z innego systemu operacyjnego, takiego jak Linux live USB lub Windows PE, ponieważ system Windows zawsze ładuje MS Gothic podczas uruchamiania.
phuclv
źródło
Pięć postów w ciągu trzech godzin przez nowego użytkownika na tej stronie polecającego ten sam program. Wygląda na zbyt spamerską. Proszę nie rób tego. Czy jesteś w jakiś sposób powiązany z twórcami oprogramowania?
Daniel Beck
Po prostu odpowiedz na pytanie, a następnie znajdź powiązane pytanie, więc ja również na nie odpowiem. Czy to zabronione?
phuclv
Nie. Niestety są spamerzy, a ich zachowanie jest w zasadzie identyczne, reklamując własne oprogramowanie na wielu podobnych pytaniach. Moderatorzy muszą następnie ustalić, czy jest to uzasadniona rada, czy spam. Czasem jednak popełniamy błędy i uważamy entuzjastów za spamerów. Poprzedni komentarz był raczej sugestią, aby zapobiec przypadkowemu usunięciu Twoich postów.
Daniel Beck
2

To zależy od czcionki. Różne czcionki mają różne cechy, w tym różne zachowanie podczas wygładzania czcionek. Być może używasz czcionki w grupie Mincho, ponieważ są one powszechnie używane jako czcionki domyślne i mogą mieć podobne problemy; Czcionki gotyckie mogą działać lepiej na ekranie.

Jukka K. Korpela
źródło
1
Jak zmienić styl czcionki na same japońskie znaki?
missingfaktor
1
@missingfaktor, który zależy od używanego programu; i zwykle nie należy przełączać stylu czcionki według języka, ale zamiast tego wybrać czcionkę akceptowalną dla wszystkich potrzebnych znaków. Gdy używasz programu Word, może to być Arial Unicode MS, jeśli możesz używać takiej bezszeryfowej czcionki o prostej konstrukcji - ma ona bardzo szeroki zasięg znaków.
Jukka K. Korpela,
2

Meiryo , domyślna japońska czcionka dla systemu Windows Vista / 7, a także niektóre inne japońskie czcionki zawierają znaki bitmapowe (pikselowe) w małych rozmiarach.

Wracając do twojego przykładu, mogłem to potwierdzić za pomocą przeglądarki Firefox:

  • Znaki ClearType (podpowiedzi):

    wskazał

  • Mniejszy rozmiar czcionki; znaki bitmapowe:

    mapa bitowa


Domyślnie Firefox używa następujących ustawień dla japońskich czcionek:

ustawienia czcionek


Tak więc rozwiązaniem jest użycie większych rozmiarów czcionek lub zamiana domyślnych czcionek japońskich w aplikacji na taką, która obsługuje podpowiedzi dla wszystkich rozmiarów (np. Arial Unicode ).

Aby globalnie zmienić mapowanie / podstawić czcionkę w systemie Windows, możesz zmodyfikować lub dodać wartości rejestru w:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes
iglvzx
źródło
W moim przykładzie widać, że Kanji są renderowane płynnie, a Kana nie.
missingfaktor
Zakładam, że wynika to z niewielkiej rozbieżności w rozmiarze czcionki lub ustawieniach przeglądarki. Użyłem Firefoksa, a twój przykład jest w Google Chrome.
iglvzx,
1
Nie, Meiryo nie zawiera bitmap, ponieważ zostało już zaprojektowane do wygładzania czcionek, dlatego zawsze jest piękne w dowolnych rozmiarach czcionek. Musisz tylko zmienić domyślną japońską czcionkę na Meiryo. Tylko stare czcionki z bitmapami są okropne. It was decided that a new Japanese font was needed, as the current ones (mainly MS Gothic and MS Mincho) are incompatible with Microsoft's ClearType subpixel rendering technology[citation needed]: Meiryo is intended to increase legibility of characters on LCD screens
phuclv
Unlike previous fonts designed for CJK environments, Meiryo contains no embedded bitmaps. To improve readability under small font sizes without using embedded bitmaps, TrueType hinting language was used for stroke-reduction. Similar technology was used on MingLiU and PMingLiU versions 5.03. en.wikipedia.org/wiki/Meiryo#Characteristics
phuclv
absolutnie doświadczyłem, że Meiryo naprawia wszystko. Nie wiem, dlaczego Windows (nawet 10) w 2017 roku nadal domyślnie korzysta z technologii lat 90. i jest z tego zadowolony.
v.oddou