यूनिकोड और एचटीएमएल

हाइपरटेक्स्ट मार्कअप लैंग्वेज (एचटीएमएल ईमेल) का उपयोग करके लिखे गए वेब पेजों में यूनिकोड यूनिवर्सल कैरेक्टर सेट के साथ बहुभाषी टेक्स्ट हो सकता है। यूनिकोड और HTML के बीच संबंध की कुंजी दस्तावेज़ वर्ण सेट के बीच संबंध है, जो वर्णों के सेट को परिभाषित करता है जो एक HTML दस्तावेज़ में मौजूद हो सकता है और उन्हें संख्याएँ निर्दिष्ट करता है, और बाहरी वर्ण एन्कोडिंग, या चारसेट, एक को एन्कोड करने के लिए उपयोग किया जाता है। बाइट्स के अनुक्रम के रूप में दिया गया दस्तावेज़।

RFC 1866 में, प्रारंभिक HTML 2.0 मानक, दस्तावेज़ वर्ण सेट को ISO-8859-1 के रूप में परिभाषित किया गया था (बाद में HTML मानक Windows-1252 एन्कोडिंग के लिए डिफ़ॉल्ट)। इसे आईएसओ 10646 (जो मूल रूप से यूनिकोड के बराबर है) तक बढ़ाया गया था. यह विभिन्न भाषाओं के दस्तावेज़ों या विभिन्न प्लेटफार्मों पर बनाए गए दस्तावेज़ों के बीच भिन्न नहीं होता है। बाहरी अक्षरों को सांकेतिक अक्षरों में बदलना दस्तावेज़ के लेखक (या दस्तावेज़ बनाने के लिए लेखक द्वारा उपयोग किए जाने वाले सॉफ़्टवेयर) द्वारा चुना जाता है और यह निर्धारित करता है कि दस्तावेज़ वर्ण सेट से वर्णों को दस्तावेज़ मानचित्र को संग्रहीत करने और/या संचारित करने के लिए बाइट्स का उपयोग कैसे किया जाता है। चयनित बाहरी वर्ण एन्कोडिंग में मौजूद वर्ण वर्ण इकाई संदर्भों द्वारा प्रदर्शित नहीं किए जा सकते हैं।

यूनिकोड और HTML के बीच संबंध कई कंप्यूटर पेशेवरों, दस्तावेज़ लेखकों और वर्ल्ड वाइड वेब उपयोगकर्ताओं के लिए समान रूप से एक कठिन विषय है। विभिन्न प्राकृतिक भाषाओं और लेखन प्रणालियों से वेब पृष्ठ ों में पाठ का सटीक प्रतिनिधित्व वर्ण एन्कोडिंग, मार्कअप भाषा सिंटैक्स, कंप्यूटर फ़ॉन्ट और वेब ब्राउज़रों द्वारा समर्थन के विभिन्न स्तरों के विवरण से जटिल है।

HTML दस्तावेज़ वर्ण
वेब पेज आमतौर पर HTML या XHTML दस्तावेज़ होते हैं। दोनों प्रकार के दस्तावेजों में एक मौलिक स्तर पर, चरित्र (कंप्यूटिंग) होते हैं, जो कि ग्रफीम और ग्रेफेम जैसी इकाइयाँ हैं, जो इस बात से स्वतंत्र हैं कि वे कंप्यूटर भंडारण  सिस्टम और  संगणक संजाल  में कैसे प्रकट होते हैं।

एक HTML दस्तावेज़ यूनिकोड वर्णों का एक क्रम है। अधिक विशेष रूप से, HTML 4.0 दस्तावेज़ों को HTML दस्तावेज़ वर्ण सेट में वर्णों को शामिल करने की आवश्यकता होती है: एक वर्ण प्रदर्शनों की सूची जिसमें प्रत्येक वर्ण को एक अद्वितीय, गैर-नकारात्मक पूर्णांक कोड बिंदु निर्दिष्ट किया जाता है। यह सेट HTML 4.0 दस्तावेज़ प्रकार परिभाषा में परिभाषित किया गया है, जो सिंटैक्स (वर्णों के स्वीकार्य क्रम) को भी स्थापित करता है जो एक वैध HTML दस्तावेज़ का उत्पादन कर सकता है। HTML 4.0 के लिए निर्धारित HTML दस्तावेज़ वर्ण में अधिकांश, लेकिन सभी नहीं, यूनिकोड और ISO/IEC 10646 द्वारा संयुक्त रूप से परिभाषित वर्ण शामिल हैं: यूनिवर्सल कैरेक्टर सेट (UCS)।

HTML दस्तावेज़ों की तरह, एक XHTML दस्तावेज़ यूनिकोड वर्णों का एक क्रम है। हालांकि, एक एक्सएचटीएमएल दस्तावेज़ एक एक्सएमएल दस्तावेज़ है, जो अमूर्तता की एक स्पष्ट दस्तावेज़ चरित्र परत नहीं होने के बावजूद, अनुमेय वर्णों की एक समान परिभाषा पर निर्भर करता है जो यूनिकोड / यूसीएस वर्ण परिभाषाओं के अधिकांश, लेकिन सभी को कवर नहीं करता है। HTML और XHTML/XML द्वारा उपयोग किए जाने वाले सेट थोड़े अलग हैं, लेकिन इन अंतरों का औसत दस्तावेज़ लेखक पर बहुत कम प्रभाव पड़ता है।

भले ही दस्तावेज़ HTML या XHTML हो, जब फाइल सिस्टम पर संग्रहीत किया जाता है या किसी नेटवर्क पर प्रसारित किया जाता है, तो दस्तावेज़ के वर्णों को एक विशेष वर्ण एन्कोडिंग के अनुसार अंश  ऑक्टेट (कंप्यूटिंग) एस (बाइट्स) के अनुक्रम के रूप में एन्कोड किया जाता है। यह एन्कोडिंग या तो एक यूनिकोड परिवर्तन प्रारूप हो सकता है, जैसे UTF-8, जो किसी भी यूनिकोड वर्ण को सीधे एन्कोड कर सकता है, या एक लीगेसी एन्कोडिंग, जैसे Windows-1252, जो नहीं कर सकता। हालांकि, एन्कोडिंग का उपयोग करते समय भी जो सभी यूनिकोड वर्णों का समर्थन नहीं करते हैं, एन्कोडेड दस्तावेज़ संख्यात्मक वर्ण संदर्भों का उपयोग कर सकता है। उदाहरण के लिए,   (☺) का उपयोग यूनिकोड वर्ण सेट में मुस्कुराते हुए चेहरे के चरित्र को इंगित करने के लिए किया जाता है।

वर्ण एन्कोडिंग
संख्यात्मक वर्ण संदर्भों का सहारा लिए बिना सभी यूनिकोड वर्णों का समर्थन करने के लिए, एक वेब पेज में सभी यूनिकोड को शामिल करने वाला एक एन्कोडिंग होना चाहिए। सबसे लोकप्रिय UTF-8 है, जहां ASCII वर्ण, जैसे अंग्रेजी अक्षर, अंक, और कुछ अन्य सामान्य वर्ण ASCII के विरुद्ध अपरिवर्तित संरक्षित किए जाते हैं। यह HTML कोड (जैसे और ) को ASCII की तुलना में अपरिवर्तित बनाता है। ASCII श्रेणी के बाहर के वर्ण 2–4 बाइट्स में संग्रहित किए जाते हैं। UTF-16 का उपयोग करना भी संभव है जहां अधिकांश वर्णों को अलग-अलग endianness के साथ दो बाइट के रूप में संग्रहीत किया जाता है, जो आधुनिक ब्राउज़रों द्वारा समर्थित है लेकिन आमतौर पर कम उपयोग किया जाता है।

संख्यात्मक चरित्र संदर्भ
लीगेसी एन्कोडिंग की सीमाओं के आसपास काम करने के लिए, HTML को इस तरह डिज़ाइन किया गया है कि एक संख्यात्मक वर्ण संदर्भ का उपयोग करके एक HTML दस्तावेज़ के अंदर संपूर्ण यूनिकोड के वर्णों का प्रतिनिधित्व करना संभव है: वर्णों का एक क्रम जो यूनिकोड कोड बिंदु को स्पष्ट रूप से बताता है जिस पात्र का प्रतिनिधित्व किया जा रहा है। एक चरित्र संदर्भ रूप लेता है एन, जहां N या तो यूनिकोड कोड बिंदु के लिए एक दशमलव संख्या है, या एक हेक्साडेसिमल संख्या है, जिस स्थिति में इसे इसके द्वारा उपसर्ग किया जाना चाहिए. संख्यात्मक वर्ण संदर्भ बनाने वाले वर्ण इंटरनेट पर उपयोग के लिए स्वीकृत प्रत्येक एन्कोडिंग में सार्वभौमिक रूप से प्रतिनिधित्व योग्य हैं।

इस संदर्भ में हेक्साडेसिमल के लिए समर्थन हाल ही का है, इसलिए पुराने ब्राउज़रों को हेक्साडेसिमल संख्याओं के साथ संदर्भित वर्णों को प्रदर्शित करने में समस्या हो सकती है – लेकिन उन्हें वैसे भी कोड पॉइंट 255 से ऊपर यूनिकोड वर्णों को प्रदर्शित करने में समस्या होगी। पुराने ब्राउज़रों के साथ बेहतर संगतता सुनिश्चित करने के लिए, हेक्साडेसिमल कोड बिंदु को दशमलव मान में परिवर्तित करना अभी भी एक सामान्य अभ्यास है (उदाहरण के लिए   के बजाय  ).

नामित वर्ण संस्थाएं
HTML 4 में, वर्णों के लिए 252 नामित वर्ण संस्थाओं का एक मानक सेट है - कुछ सामान्य, कुछ अस्पष्ट - जो या तो कुछ वर्ण एन्कोडिंग में नहीं पाए जाते हैं या कुछ संदर्भों में मार्कअप संवेदनशील होते हैं (उदाहरण के लिए कोण कोष्ठक और उद्धरण चिह्न)। हालांकि किसी भी यूनिकोड वर्ण को उसके संख्यात्मक कोड बिंदु द्वारा संदर्भित किया जा सकता है, कुछ HTML दस्तावेज़ लेखक इसके बजाय इन नामित संस्थाओं का उपयोग करना पसंद करते हैं, जहां संभव हो, क्योंकि वे कम गूढ़ हैं और शुरुआती ब्राउज़रों द्वारा बेहतर समर्थित थे।

इकाई संदर्भों के उपयोग के माध्यम से चरित्र संस्थाओं को एक HTML दस्तावेज़ में शामिल किया जा सकता है, जो ' EntityName, जहां EntityName इकाई का नाम है। उदाहरण के लिए, , बहुत कुछ एक सा   या  , प्रतिनिधित्व करता है : em डैश वर्ण — भले ही प्रयुक्त वर्ण एन्कोडिंग में वह वर्ण न हो।

पूरी सूची के लिए, देखें: XML और HTML वर्ण इकाई संदर्भों की सूची।

वर्ण एन्कोडिंग निर्धारण
HTML को सही ढंग से संसाधित करने के लिए, एक वेब ब्राउज़र को यह पता लगाना चाहिए कि कौन से यूनिकोड वर्ण HTML दस्तावेज़ के एन्कोडेड रूप से दर्शाए गए हैं। ऐसा करने के लिए, वेब ब्राउज़र को पता होना चाहिए कि किस एन्कोडिंग का उपयोग किया गया था।

एन्कोडिंग जानकारी
जब कोई दस्तावेज़ MIME संदेश या परिवहन के माध्यम से प्रेषित होता है जो MIME सामग्री प्रकार जैसे HTTP प्रतिक्रिया का उपयोग करता है, तो संदेश सामग्री-प्रकार शीर्षलेख के माध्यम से एन्कोडिंग को संकेत दे सकता है, जैसे. एन्कोडिंग घोषित करने के अन्य बाहरी साधनों की अनुमति है लेकिन शायद ही कभी इस्तेमाल किया जाता है। यदि दस्तावेज़ यूनिकोड एन्कोडिंग की तुलना का उपयोग करता है, तो एन्कोडिंग जानकारी बाइट ऑर्डर मार्क (बीओएम) के रूप में भी मौजूद हो सकती है। अंत में, एन्कोडिंग को HTML सिंटैक्स के माध्यम से घोषित किया जा सकता है। के लिए  क्रमांकन तब तक, जब तक पृष्ठ ASCII के विस्तार में एन्कोड किया गया हो (जैसे UTF-8, और इस प्रकार, यदि पृष्ठ UTF-16 का उपयोग नहीं कर रहा है), a   तत्व, जैसे   या (HTML5 से शुरू)   इस्तेमाल किया जा सकता है। एक्सएमएल के रूप में क्रमबद्ध एचटीएमएल पृष्ठों के लिए, घोषणा विकल्प या तो एन्कोडिंग डिफ़ॉल्ट (जो एक्सएमएल दस्तावेजों के लिए यूटीएफ -8 है) पर भरोसा करना है, या एक्सएमएल एन्कोडिंग घोषणा का उपयोग करना है। XML के रूप में प्रस्तुत HTML में मेटा विशेषता कोई भूमिका नहीं निभाती है।

एन्कोडिंग डिफ़ॉल्ट
एक एन्कोडिंग डिफ़ॉल्ट तब लागू होता है जब कोई बाहरी या आंतरिक एन्कोडिंग घोषणा नहीं होती है और कोई बाइट ऑर्डर चिह्न भी नहीं होता है। जबकि XML के रूप में प्रस्तुत किए गए HTML पृष्ठों के लिए एन्कोडिंग डिफ़ॉल्ट UTF-8 होना आवश्यक है, एक नियमित वेब पेज के लिए एन्कोडिंग डिफ़ॉल्ट (अर्थात: HTML पृष्ठों के लिए क्रमबद्ध रूप से ) ब्राउज़र के स्थानीयकरण के आधार पर भिन्न होता है। मुख्य रूप से पश्चिमी यूरोपीय भाषाओं के लिए स्थापित सिस्टम के लिए, यह आमतौर पर ISO 8859-1#Windows-1252|Windows-1252 होगा। सिरिलिक वर्णमाला स्थानों के लिए, डिफ़ॉल्ट आमतौर पर Windows-1251 है। किसी ऐसे स्थान के ब्राउज़र के लिए जहां लीगेसी मल्टी-बाइट कैरेक्टर एनकोडिंग प्रचलित हैं, ऑटो-डिटेक्शन के कुछ रूप लागू होने की संभावना है।

एन्कोडिंग रुझान
प्रोग्रामिंग भाषाओं और ऑपरेटिंग सिस्टम में 8-बिट पाठ प्रस्तुतियों की विरासत और एन्कोडिंग की बारीकियों को समझने की आवश्यकता के साथ बोझिल उपयोगकर्ताओं से बचने की इच्छा के कारण, HTML लेखकों द्वारा उपयोग किए जाने वाले कई टेक्स्ट संपादक एन्कोडिंग के विकल्प की पेशकश करने में असमर्थ या अनिच्छुक हैं। फ़ाइलों को डिस्क में सहेजते समय और अक्सर बहुत सीमित सीमा से परे वर्णों के इनपुट की अनुमति भी नहीं देते हैं। नतीजतन, कई HTML लेखक एन्कोडिंग मुद्दों से अनभिज्ञ हैं और उन्हें इस बात का कोई अंदाजा नहीं है कि उनके दस्तावेज़ वास्तव में किस एन्कोडिंग का उपयोग करते हैं। गलतफहमी, जैसे विश्वास है कि एन्कोडिंग घोषणा वास्तविक एन्कोडिंग में परिवर्तन को प्रभावित करती है (जबकि यह वास्तव में केवल एक लेबल है जो गलत हो सकता है), इस संपादक के रवैये का भी एक कारण है। उसी दिशा में योगदान देने वाला एक अन्य कारक, UTF-8 का आगमन है – जो अन्य एन्कोडिंग की आवश्यकता को बहुत कम कर देता है, और इस प्रकार आधुनिक संपादक HTML5 विनिर्देश द्वारा अनुशंसित डिफ़ॉल्ट रूप से जाते हैं, यूटीएफ -8 के लिए।

बाइट ऑर्डर मार्क/यूनिकोड सूँघना
एचटीएमएल (सामग्री-प्रकार टेक्स्ट/एचटीएमएल और सामग्री/प्रकार एप्लिकेशन/एक्सएचटीएमएल+एक्सएमएल) के दोनों सीरियलाइजेशन के लिए, बाइट ऑर्डर मार्क (बीओएम) एचटीएमएल दस्तावेज़ के भीतर एन्कोडिंग जानकारी प्रसारित करने का एक प्रभावी तरीका है। UTF-8 के लिए, BOM वैकल्पिक है, जबकि UTF-16 और UTF-32 एनकोडिंग के लिए यह अनिवार्य है। (ध्यान दें: BOM के बिना UTF-16 और UTF-32 को औपचारिक रूप से अलग-अलग नामों से जाना जाता है, वे अलग-अलग एनकोडिंग हैं, और इस प्रकार कुछ प्रकार की एन्कोडिंग घोषणा की आवश्यकता होती है - UTF-16BE, UTF-16LE, UTF-32LE और UTF-32BE देखें .) BOM वर्ण (U+FEFF) के उपयोग का मतलब है कि एन्कोडिंग स्वचालित रूप से किसी भी प्रोसेसिंग एप्लिकेशन के लिए खुद को घोषित करती है। प्रसंस्करण अनुप्रयोगों को क्रमशः UTF-32, UTF-16 या UTF-8 एन्कोडेड के रूप में दस्तावेज़ की पहचान करने के लिए बाइट स्ट्रीम में प्रारंभिक 0x0000FEFF, 0xFEFF या 0xEFBBBF की तलाश करने की आवश्यकता है। इन एन्कोडिंग के लिए किसी अतिरिक्त मेटाडेटा तंत्र की आवश्यकता नहीं है क्योंकि बाइट-ऑर्डर चिह्न में प्रसंस्करण अनुप्रयोगों के लिए आवश्यक सभी जानकारी शामिल है। ज्यादातर परिस्थितियों में, बाइट-ऑर्डर मार्क कैरेक्टर को अन्य कैरेक्टर्स से अलग एडिटिंग एप्लिकेशन द्वारा हैंडल किया जाता है, इसलिए लेखक द्वारा गलत एन्कोडिंग को इंगित करने के लिए बाइट ऑर्डर मार्क को हटाने या अन्यथा बदलने का बहुत कम जोखिम होता है (जैसा कि एन्कोडिंग घोषित होने पर हो सकता है) अंग्रेजी/लैटिन लिपि में)। यदि दस्तावेज़ में बाइट-ऑर्डर चिह्न का अभाव है, तो तथ्य यह है कि HTML दस्तावेज़ में पहला गैर-रिक्त मुद्रण योग्य वर्ण <(U+003C) माना जाता है, जिसका उपयोग UTF-8/UTF-16/UTF- निर्धारित करने के लिए किया जा सकता है। 32 एन्कोडिंग।

एन्कोडिंग ओवरराइडिंग
कई HTML दस्तावेज़ों को गलत एन्कोडिंग जानकारी, या कोई एन्कोडिंग जानकारी बिल्कुल नहीं दी जाती है। ऐसे मामलों में एन्कोडिंग निर्धारित करने के लिए, कई ब्राउज़र उपयोगकर्ता को किसी सूची से मैन्युअल रूप से एन्कोडिंग नाम चुनने की अनुमति देते हैं। वे एक एन्कोडिंग ऑटो-डिटेक्शन एल्गोरिदम भी नियोजित कर सकते हैं जो कंसर्ट में या के साथ काम करता है – बीओएम के मामले में और एचटीएमएल के मामले में एक्सएमएल के रूप में कार्य करता है –  मैनुअल ओवरराइड के खिलाफ।

HTML दस्तावेज़ों के लिए जो हैं  क्रमबद्ध, मैनुअल ओवरराइड सभी दस्तावेजों पर लागू हो सकता है, या केवल उन पर लागू हो सकता है जिनके लिए घोषणाओं और/या बाइट पैटर्न को देखकर एन्कोडिंग का पता नहीं लगाया जा सकता है। यह तथ्य कि मैनुअल ओवरराइड मौजूद है और व्यापक रूप से उपयोग किया जाता है, वेब पर सटीक एन्कोडिंग घोषणाओं को अपनाने में बाधा डालता है; इसलिए समस्या के बने रहने की संभावना है। लेकिन ध्यान दें कि इंटरनेट एक्सप्लोरर, क्रोम और सफारी –  एक्सएमएल और दोनों के लिए   क्रमबद्धता –  पृष्ठ में BOM शामिल होने पर एन्कोडिंग को ओवरराइड करने की अनुमति न दें। पसंदीदा XML लेबल के साथ क्रमबद्ध HTML दस्तावेज़ों के लिए – , मैनुअल एन्कोडिंग ओवरराइड की अनुमति नहीं है। ऐसे एक्सएमएल दस्तावेज़ के एन्कोडिंग को ओवरराइड करने का अर्थ होगा कि दस्तावेज़ एक्सएमएल होना बंद हो गया है, क्योंकि यह पता लगाने योग्य त्रुटियों के साथ एन्कोडिंग घोषणा के लिए एक्सएमएल दस्तावेज़ों के लिए घातक त्रुटि है। वर्तमान में, फ़ायरफ़ॉक्स जैसे गेको ब्राउज़र इस नियम का पालन करते हैं, जबकि अन्य सामान्य ब्राउज़र जो HTML को XML के रूप में समर्थन करते हैं, जैसे कि वेबकिट ब्राउज़र (क्रोम / सफारी) एक्सएचटीएमएल दस्तावेज़ों के एन्कोडिंग को मैन्युअल रूप से ओवरराइड करने की अनुमति दें।

वेब ब्राउज़र समर्थन
कई ब्राउज़र पूरे यूनिकोड प्रदर्शनों की सूची के केवल एक छोटे उपसमुच्चय को प्रदर्शित करने में सक्षम हैं। यहां बताया गया है कि आपका ब्राउज़र विभिन्न यूनिकोड कोड बिंदुओं को कैसे प्रदर्शित करता है:

मोज़िला फ़ायरफ़ॉक्स, ओपेरा (वेब ​​ब्राउज़र), सफारी (वेब ​​​​ब्राउज़र) और इंटरनेट एक्सप्लोरर (संस्करण 7 से) जैसे कुछ वेब ब्राउज़र पृष्ठ पर प्रत्येक व्यक्तिगत चरित्र को प्रदर्शित करने के लिए बुद्धिमानी से एक फ़ॉन्ट चुनकर बहुभाषी वेब पेज प्रदर्शित करने में सक्षम हैं।. वे यूनिकोड ब्लॉक के किसी भी मिश्रण को सही ढंग से प्रदर्शित करेंगे, जब तक कि ऑपरेटिंग सिस्टम में टाइपफेस # यूनिकोड फोंट की उपयुक्त सूची मौजूद हो।

पुराने ब्राउज़र, जैसे नेटस्केप नेविगेटर 4.77 और इंटरनेट एक्सप्लोरर 6, केवल पृष्ठ के वर्ण एन्कोडिंग से जुड़े वर्तमान फ़ॉन्ट द्वारा समर्थित पाठ प्रदर्शित कर सकते हैं, और संख्यात्मक वर्ण संदर्भों को वर्तमान वर्ण एन्कोडिंग के भीतर कोड मानों के संदर्भ के रूप में गलत समझ सकते हैं, बल्कि यूनिकोड कोड बिंदुओं के संदर्भ में। जब आप ऐसे ब्राउज़र का उपयोग कर रहे हैं, तो यह संभावना नहीं है कि आपके कंप्यूटर में वे सभी फ़ॉन्ट हों, या यह कि ब्राउज़र एक ही पृष्ठ पर सभी उपलब्ध फ़ॉन्ट का उपयोग कर सकता है। नतीजतन, ब्राउज़र ऊपर दिए गए उदाहरणों में पाठ को सही ढंग से प्रदर्शित नहीं करेगा, हालांकि यह उनमें से एक सबसेट प्रदर्शित कर सकता है। क्योंकि वे मानक के अनुसार एन्कोड किए गए हैं, हालांकि, वे किसी भी सिस्टम पर सही ढंग से प्रदर्शित होंगे जो आज्ञाकारी है और जिसमें अक्षर उपलब्ध हैं। इसके अलावा, नामित इकाई संदर्भों में उपयोग के लिए दिए गए नाम वाले वर्ण दूसरों की तुलना में अधिक सामान्य रूप से उपलब्ध होने की संभावना है।

मूल बहुभाषी तल के बाहर वर्ण प्रदर्शित करने के लिए, जैसे कि गोथिक अक्षर फेहु, जो उपरोक्त तालिका में रूनिक अक्षर फेहु का एक प्रकार है, कुछ प्रणालियों (जैसे विंडोज 2000) को उनकी सेटिंग्स के मैनुअल समायोजन की आवश्यकता होती है।

उपयोग की आवृत्ति
Google के वेब इंडेक्स के आंतरिक डेटा के अनुसार, दिसंबर 2007 में UTF-8 यूनिकोड एन्कोडिंग वेब पेजों पर सबसे अधिक इस्तेमाल किया जाने वाला एन्कोडिंग बन गया, ASCII (US) और ISO/IEC 8859-1|8859-1/Windows-1252 दोनों को पीछे छोड़ दिया ( पश्चिमी यूरोपियन)।

यह भी देखें

 * मेटा: सहायता: विशेष वर्ण
 * HTML में कैरेक्टर एनकोडिंग
 * वर्णसेट का पता लगाना
 * wikibooks: यूनिकोड/चरित्र संदर्भ|यूनिकोड चरित्र संदर्भ (wikibooks)

बाहरी संबंध

 * Unicode in XML and other Markup Languages - a W3C & Unicode Consortium joint publication that describes issues and provides guidelines relating to Unicode in markup languages
 * Latin-1, "Special", and Mathematical, Greek and Symbolic named character entity definitions for HTML 4.01
 * UnicodeMap.org - Browse Unicode characters, ranges, and other information
 * SIL's freeware fonts, editors and documentation
 * Alan Wood’s Unicode Resources - Unicode fonts and information.
 * http://www.phon.ucl.ac.uk/home/wells/ipa-unicode.htm The International Phonetic Alphabet in Unicode
 * http://www.alanwood.net/unicode/cjk_compatibility_ideographs.html CJK Compatibility Ideographs
 * http://www.unicode.org/charts/ Unicode character charts; hexadecimal numbers only; PDF files showing all characters independent of browser capabilities
 * Table of Unicode characters from 1 to 65535 - shows how they look in one's browser
 * Web tool that converts "special" characters (such as Chinese characters) to Unicode numeric character references
 * Multi-lingual web pages and Unicode - how to fix display problems
 * w3.org via web.archive.org - Original HTML5 Citation Reference saved via Wayback Machine