[+] Dziwne czcionki w firefoksie

Tematy związane z oprogramowaniem, instalacją, konfiguracją
giaur
Member
Posty: 1915
Rejestracja: 25 maja 2007, 22:16

[+] Dziwne czcionki w firefoksie

Post autor: giaur »

Konfiguracja czcionek i wygląd strony pod Windows:
zrzutekranu1r.png
zrzutekranu1r.png
To samo pod Linuksem:
zrzutekranu1r.png
zrzutekranu1r.png
Czy ktoś z was potrafi to wyjaśnić? Bo mi brakuje pomysłów? Wszystkie potrzebne czcionki są w systemie - mało tego, inne przeglądarki (np. chrome) wyświetlają czcionki dobrze. Tylko mi nie proponujcie odznaczania opcji "Zezwól stronom na wyświetlanie innych czcionek" bo wtedy 90% innych stron wyświetla się źle.

Macie jakiś pomysł?
Załączniki
zrzutekranu2h.png
95676491.png
91925693.png
fnmirk
Senior Member
Posty: 8324
Rejestracja: 03 grudnia 2007, 06:37

Post autor: fnmirk »

Uparłeś się na te czcionki Microsoftu. A spróbowałeś zestawu znaków utf8 i czcionki zachodniej w domyślnych ustawieniach? Jest różnica wizualna w sposobie wyświetlania znaków między iso8859-2 a iso8859-1 (iso8859-15) na niektórych stronach www - ale nie potrafię tego wyjaśnić.

Na obrazkach zbytniej różnicy nie widać.
giaur
Member
Posty: 1915
Rejestracja: 25 maja 2007, 22:16

Post autor: giaur »

Uparłeś się na te czcionki Microsoftu.
Tak, uparłem się aby wyświetlane były czcionki takie jak ustawiłem. Pod Windowsem tak jest, czemu pod Debianem nie? Te same czcionki ustawione, te same zainstalowane. Staram się dojść w czym problem? I to problem tylko z Firefoksem, bo jak mówiłem w chrome jest ok

Chętnie bym napisał do programistów mozilli - może ktoś z was wie gdzie (do kogo) najlepiej skierować maila? To co najmniej dziwne zachowanie jest według mnie i na pewno nie jest to prawidłowe zachowanie
Na obrazkach zbytniej różnicy nie widać.
Jak dla mnie widać różnicę drastyczną. Pod Windowsem jest to Arial, prawdopodobnie 9 lub 10, pod Linuksem jakieś bitmapowe postrzępione bedziewie (na pewno nie jest to czcionka ttf i na pewno nie arial)
fnmirk
Senior Member
Posty: 8324
Rejestracja: 03 grudnia 2007, 06:37

Post autor: fnmirk »

&quot pisze:Pod Windowsem jest to Arial, prawdopodobnie 9 lub 10, pod Linuksem jakieś bitmapowe postrzępione badziewie (na pewno nie jest to czcionka ttf i na pewno nie arial)
I tu się mylisz? To co widzisz na ekranie to prawie zawsze jest bitmapa. Już wielokrotnie napisałem na forum o tym aby przy konfiguracji wielkości fontów ekranowych nie sugerować się ustawieniami dostępnymi pod Windowsem. Jednostka określająca wielkość fontu np. 12 pod Windowsem nie jest równa wielkości 12 pod Linuksem. I nigdy nie będzie tak samo wyglądać. Linux wspiera w naturalnych sposób PostScript i w nim fonty postscriptowe są tłumaczone przy wyświetlaniu na bitmapy. Nawet fonty ttf wyświetlane na ekranie to tylko bitmapy. I jak ustawisz błędny rozmiar fontu, nieadekwatny do wielkości piksela ekranowego, to nawet pod Windowsem jest to źle wyświetlane.
giaur
Member
Posty: 1915
Rejestracja: 25 maja 2007, 22:16

Post autor: giaur »

A o bibliotece freetype słyszałeś? Nie będę wgłębiać się w szczegóły - wszystkie informacje znajdziesz na stronie tego projektu. Wydaje się, że nie odróżniasz pojęcia czcionki bitmapowej od true type. TTF to tak wbrew pozorom bardzo skomplikowany twór - zawiera w sobie wszystkie dane potrzebne do poprawnego wyświetlenia czcionki w każdym rozmiarze, a skalowanie polega na skomplikowanych obliczeniach matematycznych - zobacz sobie specyfikację ttf. W przeciwieństwie do prostych fontów bitmapowych z Linuksa, które są "zaprojektowane" tylko na jeden jedyny rozmiar (de fakco kazda litera jest bitmapą i dopóki jej nie przeskalujemy będzie wszystko ok, ale po przeskalowaniu ulega zniekształceniu).

Nie mieszaj tutaj pojęcia wielkości piksela ekranowego - to jest kwestia sprzętowa - zakładamy że nie stosujemy żadnych algorytmów "ulepszających" wyświetlanie czcionek na monitorach LCD. Czcionka ma być wyświetlana bez żadnego algorytmu antyaliasingu. Poprawianie wyglądu czcionek na różnych typach monitorów to już zupełnie inna bajka i jest na to masa algorytmów (chociażby ClearType Microsoftu), które mają sprawić, że czcionka będzie wyglądać tak jak wydrukowana na papierze. Ale tutaj nie o tym mówimy.

Nieważne czy to co widzę na ekranie to jest bitmapa czy nie - ważne jak została wygenerowana. Jeżeli danymi źródłowymi będzie czcionka ttf, to biblioteka freetype potrafi wygenerować bitmapę, która będzie wyglądać dokładnie tak jak czcionka pod windowsem. Wielkość czcionki zależy tylko i wyłącznie od ustawionej wielkości oraz od dpi.

I zauważ, że problemem nie jest tutaj to, że taka sama czionka ttf pod linuksem wyglada inaczej niz pod Windows - nie, wygląda (dzięki libfreetype) dokładnie tak samo. Problem w tym, że w 1 przypadku na 10 firefox zamiast zastosować czcionkę ttf stosuje jakąś inną, bitmapową która wygląda tak jak wygląda. I w dodaku, dotyczy to tylko firefoksa, w pozostałych przeglądarkach które zastosowały czcionkę taką, jaka jest ustawione wszystko wygląda dokładnie jak pod windoows

A jeśli dalej nie wierzysz, to daj zrzut ekranu z tekstu w notatniku spod windowsa, powiedz jaką czcionką go napisałeś i jakie masz dpi w systemie, ja napiszę ten sam tekst w kwrite w linuksie i zobaczysz ze czcionka będzie wyglądać identycznie.
fnmirk
Senior Member
Posty: 8324
Rejestracja: 03 grudnia 2007, 06:37

Post autor: fnmirk »

Nie mieszaj tutaj pojęcia wielkości piksela ekranowego - to jest kwestia sprzętowa - zakładamy że nie stosujemy żadnych algorytmów "ulepszających" wyświetlanie czcionek na monitorach LCD. Czcionka ma być wyświetlana bez żadnego algorytmu antyaliasingu. Poprawianie wyglądu czcionek na różnych typach monitorów to już zupełnie inna bajka i jest na to masa algorytmów (chociażby ClearType Microsoftu), które mają sprawić, że czcionka będzie wyglądać tak jak wydrukowana na papierze. Ale tutaj nie o tym mówimy.
Sprawdź co to jest glif? Nie mieszam tu pojęć. Spróbuj narysować dany krój fontu na papierze milimetrowym z zachowaniem proporcji o różnym rozmiarze. Mówisz, że pod Windows nie ma wspomagaczy? A spróbuj sprawdzić, jak jest wyświetlany dany font bez zainstalowanego sterownika karty graficznej?

Odpowiedz mi na pytanie, czy każdy zestaw czcionek typu ttf nadaje się do wyświetlania na ekranie monitora komputerowego pod Windows?

Nie wiem jak wygląda sprawa budowy i działania bibliotek odpowiedzialnych za wyświetlanie fontów, zarówno pod Windows czy Linuksem. Są to dla mnie typowe czarne skrzynki. Wiem natomiast jaki jest efekt końcowy ich działania w przypadku wydruku jak i wyświetlania na ekranie.

Pominąłeś kwestię dość istotną:
&quot pisze:A spróbowałeś zestawu znaków utf8 i czcionki zachodniej w domyślnych ustawieniach? Jest różnica wizualna w sposobie wyświetlania znaków między iso8859-2 a iso8859-1 (iso8859-15) na niektórych stronach www
giaur
Member
Posty: 1915
Rejestracja: 25 maja 2007, 22:16

Post autor: giaur »

Sprawdź co to jest glif? Nie mieszam tu pojęć. Spróbuj narysować dany krój fontu na papierze milimetrowym z zachowaniem proporcji o różnym rozmiarze.
Od tego są technologie typu ClearType, antialiasing, hinting aby te problemy zminimalizować. Ale to ma się nijak do tematu. Generalnie można przyjąć, że czcionka ttf skaluje się prawie idealnie ponieważ jest to format wektorowy. A to, że monitor lcd ma stałą wielkość piksela, to uniemożliwia wyświetlanie cziocnki tak aby była gładka (pomimo że tak naprawdę gładka jest - to tylko niedoskonałość monitora) to problem sprzętowy, w celu jego obejścia stosuje się różne techniki. Ale znów - nie o tym temat.
Mówisz, że pod Windows nie ma wspomagaczy? A spróbuj sprawdzić, jak jest wyświetlany dany font bez zainstalowanego sterownika karty graficznej?
Tak samo. To tylko kwestia rozdzielczości ustawionej w systemie i odpowiedniego dpi czcionek. Zresztą, samo twierdzenie "bez zainstalowanych sterowników karty" jest nieścisłe. Gdy nie ma sterownika od producenta, to używany jest sterownik standardowy, obsługujący tylko tryb 2D i mający kiepską wydajność. Ale nijak się to ma do samego renderowania czcionek - do tego akceleracji nie potrzeba.
Pominąłeś kwestię dość istotną:
Spróbuję. Ale dlaczego namawiasz mnie na stosowanie kodowania, które nie zawiera polskich znaków? To po pierwsze.

A po drugie, tłumaczę znów - tu nie jest kwestia tego że czcionka jest wyświetlana źle, tylko tego, że jest użyta nie taka czcionka jak powinna. Dowodem jest chociażby to, że problem nie występuje w innych przeglądarkach.

Dlatego zostawmy te dywagacje i załóżmy, że czcionka arial ( i inne ttf) wyświetlana na ekranie pod Linuksem będzie wyglądać tak samo jak pod Windowsem (tak jest w przypadku moim i 99% pozostałych gdy stosujemy libfreetype).

Wszystko to co piszesz to prawda, ale nie ma żadnej różnicy w podstawowej obsłudze czcionek true type (czyli bez użycia microsoftowych algorytmów typu ClearType) pomiędzy Linuksem a Windowsem, więc nie ma się tu za bardzo nad czym rozwodzić. Są wyświetlane tak samo, jak też i występują te same problemy.

Tutaj po prostu nie jest użyta czcionak ttf, co widać gołym okiem. I pytanie - dlaczego.
fnmirk
Senior Member
Posty: 8324
Rejestracja: 03 grudnia 2007, 06:37

Post autor: fnmirk »

&quot pisze:Spróbuję. Ale dlaczego namawiasz mnie na stosowanie kodowania, które nie zawiera polskich znaków?
Nie zawiera polskich znaków w skrypcie iso8850-1 (iso8859-15) ale w zestawie utf8 są polskie znaki. Na stronach z polskimi znakami będą wyświetlane polskie znaki. Sprawdź różnicę, która u mnie jest widoczna np. na stronie:
http://ubuntuforums.org/
&quot pisze:A po drugie, tłumaczę znów - tu nie jest kwestia tego że czcionka jest wyświetlana źle, tylko tego, że jest użyta nie taka czcionka jak powinna. Dowodem jest chociażby to, że problem nie występuje w innych przeglądarkach.
Czy próbowałeś dostosować dany zestaw fontów elektronicznych typu ttf do własnych potrzeb i dlaczego programy służące do tego są takie drogie? To tak poza tematem.

Problem obrazowo polega na tym:
http://www.microsoft.com/typography/tools/trtalr.aspx
http://www.microsoft.com/typography/tools/Image22.gif
http://www.microsoft.com/typography/tools/Image25.gif
giaur
Member
Posty: 1915
Rejestracja: 25 maja 2007, 22:16

Post autor: giaur »

@fnmirk - ale ty mówisz o problemach tragicznego wyglądu w małej rozdzielczości. Nigdy nie miałem potrzeby zajmować się tym tematem, ale logiczne jest że mała rozdzielczość - mało pikseli więc mała czcionka nie będzie wyglądać dobrze. Ale mała rozdzielczość oznacza < 640x480, gdy mamy to na dużym ekranie to rzeczywiście zaczyna robić się problem.

Strona ubuntu forums wygląda u mnie identycznie jak pod Windows xp - nie ma absolutnie żadnej różnicy w wyglądzie czcionki. Natomiast strona główna niewiarygodne.pl (mowa o skrótach artykułów) ma już czcionkę postrzępioną

Tak sobie myślę i jedyne wyjaśnienie jakie znajduję to, to że strona stosuje jakąś czcionkę, której nie ma zainstalowanej w systemie. Windows wstawia tam Arial, chrome na linuksie także. Natomiast firefox wstawia jakąś domyślną bitmapową czcionkę linuksową, która wygląda tak jak wygląda.

Pytanie tylko jak to zmienić w Firefoksie i czy się w ogóle da... bo firefox nie windows też wstawia Arial i nie ma z tym problemu. Przejrzę źródło strony, może coś wymyślę hmm
fnmirk
Senior Member
Posty: 8324
Rejestracja: 03 grudnia 2007, 06:37

Post autor: fnmirk »

Przedstawiłem wspomniany odnośnik do strony Microsoftu z akcentem na zobrazowanie problemu. Akurat to miałem pod ręką odnoście tego co wcześniej wspomniałem o papierze milimetrowym.

U mnie wspomniana przez Ciebie strona tak jest wyświetlana:

[ATTACH]3952[/ATTACH]

Używam domyślnie takich ustawień przeglądarki:

[ATTACH]3953[/ATTACH]
Załączniki
przegl.png
zrzut_giaur.jpg
ODPOWIEDZ