[accessibilite-numerique] Comptage des caractères
Jean-Louis BATAILLE
jlbataille at free.fr
Mer 6 Sep 02:38:53 EST 2006
Bonjour Pascal,
Tout d'abord, il faut bien différencier « caractère affiché » et « nombre d'octets » utiles pour coder un caractère.
Le calcul est plus simple pour les jeux de caractères comme iso-8859-1 qui codifient la plupart des caractères occidentaux sur 1 seul octet.
Par contre la tâche peut se compliquer avec d'autres jeux de caractères.
J'ai remarqué que le site webu.fr utilise le jeu de caractères UTF-8.
Et là effectivement, la taille d'une chaîne de caractères calculée à l'aide de la fonction strlen en PHP peut être différente du nombre de caractères édités.
En effet, comme tu as pu le constater, certains caractères occupent plus d'un octet et faussent ainsi le résultat.
Le nombre de caractères à considérer pour respecter les recommandations en matière d'accessibilité concerne logiquement le nombre de caractères affichés et non le nombre d'octets résultant de la fonction strlen.
Si tu tiens absolument à automatiser ce contrôle, il faudra je pense, passer par une table de correspondance du genre : caractère affiché <-> nombre d'octets utiles en UTF-8, ou alors convertir dans ta fonction, chaque lien et chaque title, de UTF-8 vers ISO 8859-1 à l'aide de la fonction iconv, avant de l'évaluer ensuite à l'aide de la fonction strlen.
Mais peut-être existe-t-il une solution plus simple ou que ce genre de script est disponible sur le Net, quitte à l'adapter ?
Tout dépend de l'usage que tu comptes faire de ta fonction et du contexte dans lequel tu souhaites t'en servir.
Dans un premier temps, la fonction strlen pourra peut-être suffire si, même codés en UTF-8, la plupart des liens et des titles ne dépassent pas la taille recommandée.
Ceux qui la dépasseraient nécessiteraient alors dans un second temps, une vérification humaine.
Cordialement.
Jean-Louis BATAILLE
----- Original Message -----
From: "Pascal Gautronneau" <pascal at webu.fr>
To: <accessibilite-numerique at list.accessiweb.org>
Sent: Tuesday, September 05, 2006 3:57 PM
Subject: [accessibilite-numerique] Comptage des caractères
Bonjour,
je suis en train de faire une fonction php pour compter les caractères
afin de respecter les nombre de caractères autorisés dans les titres, alt...
Quelqu'un pourrait-il me donner la manière exacte pour compter les
caractères ? Je sais qu'on compte les espaces et la ponctuation mais il
me semble qu'il y a une histoire de caractères accentués qui compte pour
deux caractères. Si c'est bien le cas, qu'entent-on par "caractères
accentués" ?
Merci
Pascal
--
Pascal Gautronneau
06 22 60 32 94
WebU - L'internet Utile
ZI percevaliére B14c
38170 Seyssinet Pariset
www.webu.fr - 04 76 09 55 08
_______________________________________________
accessibilite-numerique mailing list
accessibilite-numerique at list.accessiweb.org
http://list.accessiweb.org/mailman/listinfo/accessibilite-numerique_list.accessiweb.org
--
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.1.405 / Virus Database: 268.11.7/437 - Release Date: 04/09/2006
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: /pipermail/accessibilite-numerique_list.accessiweb.org/attachments/20060906/0135652a/attachment-0001.html
Plus d'informations sur la liste de diffusion accessibilite-numerique