Karaktersets
Over karaktersets
Al heel vroeg in de ontwikkeling van computers gebruikte men getallen om karakters op het scherm weer te geven.
Daarin ontstonden al gauw standaarden zoals BCD, EBCDIC en ASCII. De ASCII-code omvat 128 karakters, waarvan er
95 zichtbaar zijn. De andere 33 zijn contrôle-karakters, zoals een Carriage Return en een Linefeed.
De 128 karakers van de ASCII-set waren al gauw te krap. Uit de ASCII-set ontstond de ASCII-extended set, die
256 karakters omvat (nummers 0-255). Maar ook dit bleek al snel veel te beperkt te zijn.
De getallen die nodig zijn voor het weergeven van de extended ASCII-set passen elk in één byte. Om meer karakters te kunnen weergeven is men overgestapt op codes van twee bytes elk. Daarmee kun je theoretisch 65536 karakters weergeven. Deze karakterset, die behalve Westerse ook Arabische, Chinese en Japanse karakters omvat, is beschreven in de internationale standaard ISO 10646.
Karakters en Fonts
Er is verschil tussen karakters en fonts. Een karakter is een letter, cijfer of leesteken. Het font
bepaalt hoe dat karakter er op je scherm of op papier uit ziet.
Hieronder zie je het alfabet, de cijfers en een paar leestekens in 3 verschillende fonts, namelijk Verdana,
Courier New en WingDings.
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z
0 1 2 3 4 5 6 7 8 9 . , ? !
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z
0 1 2 3 4 5 6 7 8 9 . , ? !
A B C D E F G H I J K L M N O P Q R S T U V W
X Y Z a b c d e f g h i j k l m n o p q r s
t u v w x y z0 1 2 3 4 5 6 7 8 9 . , ? !
Het font kent nog andere eigenschappen zoals Grootte, vet, cursief, enz.
Maar dat heeft met het karakter op zich niets te maken. De vreemde tekentjes van het Wingdings-font zijn nog steeds
het alfabet en de cijfers!
Het is wel noodzakelijk dat het font-file (waarin staat beschreven hoe het karakter wordt getoond) beschikbaar is op
de computer waarop dit wordt getoond. Anders zie je de default-waarde, of helemaal niets!
Behalve dat het font beschikbaar moet zijn op de PC, moet het ook beschikbaar zijn voor de browser. Als da niet het geval is,
is het goed mogelijk dat je bij Wingdings gewoon het alfabet en de cijfers ziet staan in plaats van de Wingdings-tekens.
Soms zie je helemaal niets!
Unicode
HTML 4 gebruikt de karakterset die is gedefinieerd in de internationale standaard ISO 10646. Deze standaard heet "Universal
Character Set", afgekort UCS. Kenmerk is dat de code bestaat uit twee bytes.
Hij bevat duizenden karakters, die gebruikt worden in (bijna alle) talen over de hele wereld. In de westerse wereld volstaat een
deel van deze karakterset. Die is vastgelegd in de standaard ISO 8859-1. In de moderne tekstverwerkers wordt deze gewoonlijk
aangeduid met Latin-1.
In MS-Windows wordt dit een Codepage genoemd. De ISO 8859-1 karakterset is opgenomen in codepage 1252. Een karakterset
zoals bijvoorbeeld het Vietnamees staat in codepage 1258.
HTML5 gebruikt de karakterset Unicode, daar wordt per default UTF-8 bij gebruikt.
Karaktersets in HTML 4
Als je niets opgeeft wordt in HTML gebruik gemaakt van een deel van de Universele Karakterset (UCS), namelijk wat is ingesteld
als default in het Operating System van je PC. Als je (Nederlandstalige) website bezocht wordt door iemand uit China, zal
de pagina niet goed worden weergegeven. Dat komt omdat in China met andere codepages wordt gewerkt. Om nu te zorgen dat ook
in China de gewone westerse letters op het scherm verschijnen, moet je de browser vertellen welke karakterset er moet worden
gebruikt. Dat doe je met een <meta>-tag, die je in de <head> van alle afzonderlijke HTML-bestanden
van je website moet plaatsen:
In de westerse wereld is dit meestal voldoende. Voor andere talen gebruik je:
charset | naam |
iso-8859-1 | Latin 1 (West Europees) |
iso-8859-2 | Latin 2 (Oost Europees) |
iso-8859-3 | Latin 3 (Zuid Europees) |
iso-8859-4 | Latin 4 (Noord Europees) |
iso-8859-5 | Cyrillisch (o.a. Russisch) |
iso-8859-6 | Arabisch |
iso-8859-7 | Grieks |
iso-8859-8 | Hebreeuws |
iso-8859-9 | Latin 5 (Turks) |
iso-8859-10 | Latin 6 (Noords, o.a. IJsland) |
iso-8859-11 | Thais |
iso-8859-12 | (Niet gebruikt) |
iso-8859-13 | Latin 7 |
iso-8859-14 | Latin 8 (Keltisch: Gaelic, Welsh) |
iso-8859-15 | Latin 9 Variatie op West Europees, o.a. Lets |
iso-8859-16 | Latin 10 |
Voor Grieks neem je bijvoorbeeld ISO-8859-7 en voor Turks ISO-8859-9.