polskie znaki diakrytyczne w różnych kodowaniach
Znaki diakrytyczne to nic innego jak popularnie nazwane polskie znaki (znaki specjalne spoza zestawu ASCII).
I dlatego aby poprawnie je wyświetlić to najpierw muszą być zapisane w odpowiednik kodowaniu a następnie odczytane w tym samym kodowaniu w jakim zostały zapisane. Kodowanie to musi obsługiwać polskie znaki.
Kodowanie – jest to określony sposób (standard) zapisu znaków oraz odczytywania wg. określonych reguł.
Prościej, przykładowo zapisujesz znak ś w kodowaniu ISO-8859-2 wiec wedle tego kodowania znak ś zostaje zapisany jako ¶, ponieważ w ten sposób to kodowanie obsługuje polskie znaki. Przy odczycie tego znaku przy użyciu kodowania w jakim zostało zapisane (w tym wypadku ISO-8859-2) zostanie wyświetlony prawidłowy znak.
Można odróżnić kodowania jednobajtowe jak i wielobajtowe. Różnią się tylko tym iż znakom spoza ASCII przypisane jest 1 znak (1bajt) lub wiele np. 2 bajty. Przykładowo znak ś w kodowaniu jedno bajtowym ISO-8859-2 oraz w dwóch bajtach w kodowaniu UTF-8:
ISO-8859-2 – ¶
UTF-8 –
Jakiego kodowania używać ?
UTF-8 – dlatego iż obsługuje bardzo wiele języków jak i niezliczoną ilość znaków specjalnych. Dlatego jest najbardziej uniwersalnym kodowaniem i najwygodniejszym.
Co do znaków specjalnych, dzięki użyciu UTF-8 na tej stronie można uzyskać taki efekt: ʞǝısoʇ
Jak ustawić określone kodowanie ?
Zawsze należy zacząć od zapisania pliku z określonym kodowaniem. Następnie należy pamiętać by ustawić właściwe kodowanie do odczytu tego dokumentu.
Ustawianie kodowania w HTML
Ustawiamy znacznik meta Content-Type w sekcji
który wygląda tak:<meta http-equiv="Content-Type" content="text/html;charset=utf-8"> |
Gdzie utf-8 to kodowanie w jakim dokument ma zostać odczytany.
Bez prawidłowego zapisania nie zostanie poprawnie odczytany.
Przykładowy plik html z ustawionym kodowaniem utf-8:
<!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html;charset=utf-8"> </head> <body> <h1>To jest dokument HTML odczytywany w kodowaniu utf-8</h1> </body> </html> |
Najnowsze komentarze