Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [CSS][PHP][HTML]Wykrycie aktualnie używanej czcionki.
Szunaj85
post
Post #1





Grupa: Zarejestrowani
Postów: 392
Pomógł: 7
Dołączył: 11.05.2008

Ostrzeżenie: (0%)
-----


Obecnie aby wybrać dla swojej strony jaką chcemy mieć czciąkę wystarczy wpisać kawałek kodu.
  1. {font-family: arial, verdana, sans-serif, georgia;}
Naturalnie zaczynamy od najbardziej przez nas preferowanej do najmniej.
Mając taką listę kilku czcionek w przypadku jeżeli pierwsza czcionka na liście nie jest zainstalowana na komputerze na którym otwierana jest strona, przeglądarka poszuka kolejnej czcionki na liście dopóki nie znajdzie odpowiedniej.
Tu akurat nie ma nic nadzwyczajnego.
Moje pytanie brzmi... Czy da się za pomocą PHP zidentyfikować, która z czcionek została wczytana? Czy Pierwsza - domyślna, czy któraś kolejna z listy i oczywiście która.

Ten post edytował Szunaj85 4.04.2014, 15:27:08


--------------------
Jeśli Ci pomogłem wciśnij Jeśli mi pomożesz wcisnę
Go to the top of the page
+Quote Post
trueblue
post
Post #2





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


A musi być w PHP?


--------------------
Go to the top of the page
+Quote Post
pedro84
post
Post #3





Grupa: Nieautoryzowani
Postów: 2 249
Pomógł: 305
Dołączył: 2.10.2006

Ostrzeżenie: (0%)
-----


Nie da się. Po co w ogóle coś takiego?

Cytat(Szunaj85 @ 4.04.2014, 15:24:55 ) *
czciąkę

Chyba czcionkę, co nie? Poza tym, "raczej" font.


--------------------
Google knows the answer...
Go to the top of the page
+Quote Post
Szunaj85
post
Post #4





Grupa: Zarejestrowani
Postów: 392
Pomógł: 7
Dołączył: 11.05.2008

Ostrzeżenie: (0%)
-----


Cytat
A musi być w PHP?
Tak, w tym przypadku preferowałbym PHP, ale jeśli wiesz jak to rozwiązać w inny sposób opisz to.

Cytat
Nie da się. Po co w ogóle coś takiego?
To niedobrze.
W zależności, która czcionka zostanie wczytana skrypt ma za zadanie wykonać odpowiednie polecenie.
Tak przynajmniej miało to wyglądać.

Cytat
Chyba czcionkę, co nie?
Masz rację, tak to jest gdy się człowiek spieszy.

Ten post edytował Szunaj85 5.04.2014, 10:15:15


--------------------
Jeśli Ci pomogłem wciśnij Jeśli mi pomożesz wcisnę
Go to the top of the page
+Quote Post
viking
post
Post #5





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


Chyba coś przekombinowałeś. Od czasu gdy na stronie można osadzać własne fonty to ty decydujesz jaki user ma font i co mu wczytać. Więc po co sprawdzanie czy ma, czy nie ma?


--------------------
Go to the top of the page
+Quote Post
trueblue
post
Post #6





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


Cytat(Szunaj85 @ 5.04.2014, 11:13:31 ) *
Tak, w tym przypadku preferowałbym PHP, ale jeśli wiesz jak to rozwiązać w inny sposób opisz to.

Wybierasz z websafe fonts z systemu najbardziej nietypowy font.
Tworzysz na stronie element wypełniony najszerszymi znakami: mmmmwwww, duży font-size.
Obliczasz szerokość tego elementu, będzie to szerokość "wzorcowa".
Tworzysz drugi element na stronie, który wypełniasz takim samym tekstem, podstawiasz mu font-family: testowany_font, wzorcowy_font. Font-size jak wyżej.
Porównujesz szerokość elementu z szerokością wzorcową. Jeśli taka sama, to znaczy, że element nie używa testowanego_fontu.

Niestety trzeba operację powtórzyć dla każdej czcionki, którą chcemy zbadać. W iteracji, w której napotkamy na różnicę szerokości, stwierdzamy, że element używa tej czcionki.

Skuteczność prawie 100%.

Ten post edytował trueblue 5.04.2014, 10:48:57


--------------------
Go to the top of the page
+Quote Post
pedro84
post
Post #7





Grupa: Nieautoryzowani
Postów: 2 249
Pomógł: 305
Dołączył: 2.10.2006

Ostrzeżenie: (0%)
-----


Cytat(Szunaj85 @ 5.04.2014, 10:13:31 ) *
W zależności, która czcionka zostanie wczytana skrypt ma za zadanie wykonać odpowiednie polecenie.

Ok, ale konkretnie jakiego typu? Nie musisz zdradzać szczegółów, jeśli nie chcesz, ale opis przynajmniej.


--------------------
Google knows the answer...
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 15:00