Le contenu numérique ne se présente pas toujours de la même manière lorsqu'il est affiché dans différentes langues. En l'absence d'un codage approprié, les caractères peuvent être brouillés, ce qui peut entraîner des confusions, des corruptions de données, voire des pannes de site sur les marchés mondiaux.
Que vous construisiez une application multilingue ou que vous localisiez votre site web, le codage des caractères est l'un des processus qui vous permet de fournir un texte précis et une expérience utilisateur transparente. Comprendre son importance et ses différents formats, comme le codage ASCII et Unicode, vous permet de traduire et d'afficher facilement vos messages pour des publics multilingues.
Dans ce guide, nous expliquerons ce qu'est le codage des caractères, les principales normes utilisées aujourd'hui et pourquoi le codage est crucial pour l'internationalisation.
Qu'est-ce que le codage des caractères et comment affecte-t-il la réussite de la localisation d'un site web ?
Le codage des caractères consiste à convertir le texte en chiffres ou en symboles afin que les machines puissent traiter et afficher le texte sur les sites web, les applications et les systèmes d'exploitation. Les ordinateurs fonctionnant avec des chiffres binaires (0 et 1), le codage des caractères permet de traduire des textes de différentes langues dans un format numérique que les machines peuvent facilement interpréter.
Voici un exemple d'encodage de base : Dans une norme de codage, "A" peut être représenté par la séquence binaire "01000001". L'ordinateur lit ces données binaires et la norme d'encodage les traduit en caractères lisibles par l'homme : "A."
Le codage des caractères joue un rôle essentiel dans la localisation pour les entreprises internationales, car il leur permet d'afficher avec précision un large éventail de caractères provenant de différents systèmes d'écriture, notamment le chinois, l'arabe et le cyrillique. Cela permet une traduction plus précise et plus rapide.
Les entreprises peuvent également utiliser le Global Delivery Network (GDN) de Smartling, un proxy web de traduction, pour lancer rapidement des traductions pour les sites web et les applications. Une fois configuré, le contenu peut être transféré sans problème de votre site web à Smartling pour être traduit. Smartling propose même un menu de caractères spéciaux pour différentes langues et des options de formatage que vous pouvez facilement insérer dans vos traductions.
Quels sont les principaux types de codage de caractères ?
Chaque format d'encodage de caractères prend en charge différentes langues et différents besoins techniques pour la localisation des contenus.
|
Type d'encodage |
Caractéristiques principales |
Langues prises en charge |
Cas d'utilisation |
|
ASCII |
7 bits, représente 128 caractères, y compris des lettres anglaises, des chiffres et des symboles de base |
Anglais |
Les débuts de l'informatique, les fichiers texte simples, les systèmes existants |
|
ISO-8859-1 |
8 bits, représente divers caractères d'Europe de l'Ouest et de l'Est |
Langues d'Europe occidentale, telles que l'allemand, le français et l'espagnol |
Contenu web hérité, documents internationaux |
|
UTF-8 |
Longueur variable (1-4 octets), rétrocompatible avec l'ASCII, prend en charge tous les caractères Unicode, aucun BOM n'est nécessaire. |
Presque toutes les langues |
Contenu web, applications modernes, échange de données entre plates-formes |
|
UTF-16 |
Une ou deux unités de code 16 bits |
Presque toutes les langues, plus les caractères spéciaux comme les emojis |
Contenu web et international, fichiers texte modernes avec caractères spéciaux |
|
Windows-1252 |
8 bits, comprend les caractères d'Europe occidentale ; surensemble de l'ASCII |
Langues d'Europe de l'Est comme le polonais et le tchèque |
Applications anciennes basées sur Windows |
Voici un aperçu des types de codage de caractères les plus courants, de leur fonctionnement et des exemples d'utilisation dans les applications et sites web localisés.
ASCII
L'American Standard Code for Information Interchange (ASCII) est l'un des systèmes de codage de caractères les plus anciens et les plus simples. L'ASCII utilise 7 bits pour coder 128 caractères, couvrant les lettres anglaises de base, les chiffres et les signes de ponctuation.
Avec l'ASCII, chaque caractère est associé à un code numérique unique. Par exemple, la lettre majuscule "A" est représentée par 65, et le point d'exclamation " !" par 33. En binaire, "A" devient "01000001". L'ASCII est à la base des systèmes de codage modernes, mais il est limité à l'anglais et ne prend pas en charge les caractères accentués ou non latins.
ISO-8859-1
L'ISO-8859-1 est un format de codage de caractères de 8 bits à un octet développé par l'Organisation internationale de normalisation (ISO) pour étendre les capacités de l'ASCII aux langues d'Europe occidentale.
L'ISO-8859-1 code 256 caractères, y compris des lettres supplémentaires avec des accents comme "é" et "ö", ainsi qu'un grand nombre de caractères de ponctuation et de symboles spéciaux. Par exemple, le caractère "é" est représenté par le code 233, et "ñ" par le code 241. Cependant, l'ISO-8859-1 ne peut pas coder les caractères en dehors du jeu de caractères de l'Europe occidentale, ce qui limite son utilisation pour les applications internationales.
UTF-8
Le format de transformation Unicode - 8 bits (UTF-8) est un format de codage de caractères de longueur variable conçu pour une compatibilité linguistique efficace et globale. Avec UTF-8, tous les caractères ASCII sont codés sur un seul octet et conservent les mêmes valeurs binaires. Les caractères non ASCII, tels que "€", utilisent des séquences de plusieurs octets, comme "11100010 10000010 10101100" pour "€" en binaire.
UTF-8 peut encoder tous les caractères de la norme Unicode pour une prise en charge multilingue transparente. Il est devenu le format d'encodage dominant pour le web et les applications modernes en raison de sa capacité à gérer de vastes ensembles de langues.
UTF-16
L'UTF-16 représente chaque caractère de la norme Unicode à l'aide d'une ou deux unités de code de 16 bits. Les caractères des scripts ordinaires sont stockés sous la forme d'une seule unité de 16 bits, tandis que d'autres caractères (comme les émojis et les scripts historiques rares) apparaissent sous la forme de paires de substitution, qui sont deux unités de code de 16 bits combinées.
Par exemple, "A" (U+0041) en UTF-16 est 0x0041, alors que l'emoji "😊" (U+1F60A) est stocké sous la forme de la paire de substituts 0xD83D 0xDE0A. Cela permet à l'UTF-16 d'encoder plus d'un million de caractères différents, bien qu'il utilise plus d'espace que l'UTF-8 pour certains textes.
Windows-1252
Windows-1252 est un type de codage de caractères de 8 bits développé par Microsoft pour les langues d'Europe occidentale, communément appelé codage "ANSI" dans les environnements Windows. Il est similaire à l'ISO-8859-1 mais inclut des caractères supplémentaires comme les guillemets (" ") et le signe de l'euro (€).
Windows-1252 était largement utilisé dans les anciens documents et applications Windows, mais il a été largement remplacé par UTF-8, notamment pour des raisons de compatibilité internationale.
Résoudre les problèmes d'encodage des caractères dans un monde multilingue : 5 défis et bonnes pratiques
Le codage des caractères est technique et nuancé, ce qui pose certains problèmes aux entreprises qui tentent d'atteindre des publics multilingues. Lorsque vous localisez du contenu à grande échelle, soyez conscient de ces problèmes d'encodage courants et des meilleures pratiques pour les résoudre :
1. Texte brouillé
Lorsqu'un logiciel interprète un texte en utilisant un mauvais encodage de caractères, il peut en résulter des caractères brouillés et illisibles tels que des points d'interrogation ou des symboles aléatoires. Cela se produit généralement lorsque du texte encodé dans un format (comme UTF-8) est ouvert ou rendu à l'aide d'un encodage différent (comme ISO-8859-1), ce qui entraîne des interprétations d'octets non concordantes. Un texte confus crée de la confusion pour les utilisateurs et peut diminuer la crédibilité d'un site.
Meilleure pratique : Essayez d'utiliser un codage cohérent dans l'ensemble du contenu. Pour ce faire, vous pouvez utiliser des balises HTML telles que <meta charset="UTF-8"> afin de garantir que les navigateurs traitent le texte comme prévu.
2. Perte de données lors de la conversion
Lors de la conversion d'un contenu entre différents encodages, par exemple de Windows-1252 à UTF-8, certains caractères peuvent être perdus ou remplacés de manière incorrecte. Cela peut avoir de graves répercussions sur la lisibilité du contenu multilingue et localisé, et si vous ne le détectez pas à temps, cela peut entraîner une corruption des données.
Bonne pratique : Utilisez des outils de traduction compatibles avec Unicode qui simplifient la conversion entre les formats d'encodage. En outre, sauvegardez toujours les données avant d'effectuer des modifications d'encodage et testez les résultats pour vous assurer de leur exactitude.
3. Absence de prise en charge des polices ou des glyphes multilingues
Même si le format d'encodage des caractères est correct, le texte peut apparaître sous forme de carrés vides si les polices ou les glyphes nécessaires ne sont pas disponibles sur l'appareil de l'utilisateur. Ce problème est particulièrement fréquent lors de l'utilisation de lettres accentuées ou d'emojis que les jeux de polices anciens ou basiques ne prennent pas en charge.
Bonne pratique : Utilisez des polices sûres pour le web qui prennent en charge une large gamme de caractères dans toutes les langues. Créez une pile de caractères de repli que le système peut automatiquement insérer dans le texte si nécessaire.
4. Texte bidirectionnel
Des langues comme l'arabe et l'hébreu utilisent un système d'écriture de droite à gauche (RTL), ce qui peut entraîner des problèmes de mise en page et d'alignement, en particulier lorsqu'elles sont mélangées à des écritures de gauche à droite (LTR) comme l'anglais. Si ces langues ne sont pas correctement encodées, elles peuvent perturber le flux de lecture ou rompre complètement le formatage.
Bonne pratique : Appliquez les balises correctes de langue et de direction, telles que dir="rtl" et lang="ar" en HTML, afin d'aider les navigateurs à afficher le texte correctement. Choisissez des frameworks qui prennent en charge les mises en page RTL et testez le contenu pour vous assurer qu'il s'affiche correctement pour tous les publics.
5. Questions relatives à l'ordre des octets
Une marque d'ordre des octets (BOM) est un marqueur spécial au début d'un fichier texte qui indique l'ordre des octets et l'encodage. Les nomenclatures peuvent être à l'origine de problèmes tels que
- Caractères invisibles inattendus au début des fichiers (par exemple, "ï "¿")
- Incompatibilité avec certains systèmes, comme les anciens navigateurs web
- Interopérabilité entre les applications
Bonne pratique : Lorsque vous traitez des fichiers texte, utilisez des outils capables de détecter automatiquement et de traiter les nomenclatures de manière appropriée. Pour le contenu web, omettez la nomenclature en UTF-8 pour éviter les problèmes d'affichage.
Facilitez l'encodage avec les outils de localisation de Smartling
Le codage des caractères est souvent invisible pour les utilisateurs, mais il est vital pour la façon dont ils perçoivent le contenu sur tous les appareils et dans toutes les langues, qu'il s'agisse d'applications localisées ou de sites Web multilingues. En comprenant les principes de base de l'encodage, les équipes de traduction et de développement peuvent éviter des erreurs coûteuses et offrir une expérience plus fluide aux publics internationaux.
Smartling est conçu pour aider les entreprises à se développer à l'échelle mondiale tout en simplifiant la traduction pour les développeurs grâce à un puissant proxy web et à une API robuste. Smartling s'intègre directement à vos technologies existantes, éliminant les tâches manuelles et rationalisant le processus de traduction. En fait, Smartling vous permet d'ajouter de nouvelles langues et de déclencher des flux de travail de traduction à chaque poussée de code, ce qui vous permet de vous développer à l'échelle internationale sans perdre une miette.
British Airways, par exemple, a utilisé le proxy de traduction web de Smartling pour localiser son site web pour les clients coréens. Grâce à la plateforme centralisée de Smartling, British Airways a pu traduire plus de 500 000 mots et lancer son projet deux fois plus vite que d'habitude. Lisez l'étude de cas pour savoir comment ils y sont parvenus.