Problématique
-
Caractères non ASCII
Codage, transport
-
Pluralité des caractères
Muliplicité des formes
Ligatures, caractères calligraphique
-
Affichage
Droite à gauche
Traitement spécial par l'afficheur
bidirectionnalité
-
Solutions
Unicode
HTML4.0
Character Set
-
Character Set: Application d'un ensemble de caractères dans
des entiers. ISO-8859-1 (ASCII courant, par défaut, West
Europe)
-
Tranche
00
à 7F
, ASCII
international standard 7bits
-
Tranche de
80
à FF
, ASCII
dépendant des pays (accents ...)
-
ISO-8859-6 arabe, ISO-8859-7 grecque, ISO-8859-9 Turc
...
-
Un octet ne suffit pas pour coder toutes les subtilités
d'une langue.
Universal Character Set
-
Unicode (Universal Character Set) utilise des mots
de 16 bits
-
Possibilité de prendre en compte la pluralité des
caractères et les symboles ♬
-
Développé par le Consortium Unicode (http://www.unicode.org)
-
Son équivalent ISO est ISO-10646
-
La directionnalité d'un caractère est une des propriété du
Unicode. (Arabe/Hebreux rtl, latin ltr).
-
Character Encoding: Représentation mémoire (suite d'octets)
du code de caractère (e.g. UTF-8)
UTF-8
-
Unicode Transformation Format
-
Un code = série d'octets (de 1 à 6 en théorie, jusqu'à 3 en
pratique).
-
-
Octet = U+0000 à U+007f, alors caractère ascii latin
(Exple 'A' = 65 = U+0041)
-
Octet >U+007f, alors ∈ série autre caractère
(Alif=216-167) .
-
Parfait pour le transport
-
Compatible ASCII
Différents Codage de l'Arabe
-
A base de ASCII, 8 bits
-
-
Usage des codes 128 è 255,
-
ISO-8859-6
(appelé Windows-1256
sous windows)
-
Avantage, simple
-
Incovénient, trop simple
-
Solution Unicode,
encodé UTF-8
-
-
Prise en compte des letres isolés, chiffres arabes ٧ ٨
٩... caractères calligraphiques ﷲ ﷲ ﷸ, forme lettres
isolées 1424 ﻫ.
-
Développement logiciels pour internet (c.f. java
nouveau
char
type)
-
U+0600 - U+06FF pour l'usage courant
-
charset="utf-8"
("windows-1252")
Caractéristique de l'Arabe
-
Cursivité, i.e series de lettres = serie de formes (
Glyphs ), caseless, dirigé de droite à
gauche
ملك لأ ي
-
Décoratif, avec des ligatures (une forme pour plusieurs
codes)
لا
-
Dependance contexte,
هن انه مهد نوه
Le Hah a la même code (1607)
-
Dépendance font (certaines font, beauté
calligraphique)
-
If context is not needed, one shape one code (isolated
forms)
1424 ﻫ
Chaque hah a un code différent (65259)
Formating characters (caractères spéciaux)
-
Ce sont des codes servant à la directinnalité du texte,
surtout en milieu mixte.
-
Le source arabe se présente dans l'ordre de la frappe du texte.
-
‏ (#8207) ‎ (#8206)
servant à imposer une directionnalité
ممم EMI (Ecole Mohammadia d'Ingénieurs)
الخ...
vs
ممم EMI (Ecole Mohammadia d'Ingénieurs)
الخ...
-
‍ (#8205) ‌ (#8204)
servant à imposer ou non la liaison avec le contexte
بر
-
Autres, #202A (LRE), #202A (RLE), #202A(PDF) de moins en
moins utilisés
L'Arabe dans le Web
-
Le web tire sa force de son universaluité (Tim Berners-Lee)
-
Balises/attributs réservées en HTML
-
-
<span lang="ar">
texte arabe...
</span>
-
<span dir="rtl">
texte arabe...
</span>
-
<html xmlns="http://www.w3.org/1999/xhtml"
dir="rtl" lang="ar"
xml:lang="ar">
en plus complet
-
...
-
Directionalité du texte
-
-
Codée dans le caractère unicode
-
Texte html dans l'ordre des caractères saisis, affiché
alligné à droite et de droite à gauche.
-
Gérer la mixité latin/arabe. Algorithme Unicode de
bidirectionnalité.
-
Exemple de problèmes à gérer
-
-
Caractère de ponctuation " ' () entre deux modes.
Usage des entités numériques spéciales
‎
et ‏
-
Texte latin à lire logiquement en rtl.
Idem
-
Cellules de tableaux.
-
Les browsers ne répondent pas tousde la même façon
-
...
Character sets en HTML
-
balise et attributs:
meta
,
encoding
, charset
,
lang
...
-
-
<?xml version="1.0"
encoding="utf-8"?>
-
<meta http-equiv="Content-Type"
content="text/html; charset=utf-8"
/>
-
<html xmlns="http://www.w3.org/1999/xhtml"
dir="rtl" lang="ar" xml:lang="ar">
-
Entité numérique
#&1575;
vs utf-8 ا
-
-
Un caractère source = entité numérique.
-
Reconnaissable par le browser pour en déduire le
charset.
-
Lisibilité facile. Encombrement.
-
Un carcatère source encodé utf-8. Alif = deux octets 216-167
-
Visible
ا
:-(
-
Entités numériques spéciales,
‍
‎
...
Conversions entre charsets
-
Codage ISO-8859-6 de/vers Unicode
-
-
Mozilla 1.0 (Netscape7) est très bon pour cela
-
...?
-
Entités numériques de/vers UTF-8 (Mozilla toujours)
-
En général l'option save-as
Outils Auteurs
-
That is the question (royal pain)
-
Mozilla est très bon. Plusieurs charsets possibles
-
Amaya du W3C
-
Nécessité d'usage de trois mode
d'édition
-
-
Wysiwyg, usage courant, facilité, ergonomie
-
HTML source (balise + texte en arabe),
finition/optimisation niveau HTML
-
Plain HTML source (fichier éditeur de texte ascii,
merci Editplus), finition très
pointue, professionnelle
-
...sans oublier Tidy.
-
Il existe des traducteurs sur le web (ajeeb.com)
Exemples
-
Pages web en arabe
-
-
XML en arabe
-
Conclusion